Problema - Aplicação cliente x servidor usando RMI

Boa tarde,

Estou montando um trabalho para a faculdade , e pra ser sincero conheço muito pouco de java (quase nada pra falar a verdade) , mas me aventurei a montar uma aplicação cliente x servidor usando a API RMI para isso.

A aplicação constitui em 3 Clientes : Administrador , PDV (ponto de venda) , Financeiro (Responsável por aprovar as vendas). Estou com alguns problemas:

1- A aplicação funciona perfeitamente na primeira vez que executo , mas após ter executado uma vez , não consigo fazer com que o loop infinito que utilizo na tela Financeiro seja chamado novamente , para que as vendas possam ser lançadas novamente.

`[code]
for(;;){
try {

            IfSrv obj = (IfSrv) Naming.lookup(srvAdd+srvId);
            boolean sts = obj.consultVenda();
            String [] instlist = new String [5];
            
              
            //DefaultTableModel tbl1 = (DefaultTableModel) tblVenda.getModel();
            
           System.out.println("aguardando venda ser lancada = " + sts);
            
            if(sts == true && vendaOk == false){
                
                vendaOk = true;
                
               txtStsVenda.setText("Venda Lançada"); 
               
                    produto p1 = new produto();
                    
                DefaultTableModel tbl1 = (DefaultTableModel) tblVenda.getModel();
                String[] insert = new String[4];
                
                    for (int a =0 ; a <= 10 ; a++) {
                        
                       p1   = (produto) obj.getListaVenda(a);
                      
                       if(p1 != null){ 
                        
                        
                        insert[0] = String.valueOf(p1.p_id);
                        insert[1] = p1.descricao;
                        insert[2] = String.valueOf(p1.qntd);
                        insert[3] = String.valueOf(p1.valor);
                   
                        tbl1.addRow(insert);
                                
                                }else{
                           
                                
                       }
                       
               
              
           }
         
            int opt = JOptionPane.YES_NO_OPTION;
          
         int resp = JOptionPane.showConfirmDialog(null,opt);
            
         if (resp == JOptionPane.YES_OPTION){
             
             try{
    
                    
                    obj.aprovarVenda("aaaa");
                    txtStsVenda.setText("Aguardando....");
                    System.out.println("Venda aprovada");
                    
                
                } catch ( Exception e ){
                    
                    e.printStackTrace();
                    
                }
             
             
         }
         
         
         
        }

        }catch(Exception e){
            
            e.printStackTrace();
        }

[/code]`