Problema com RMI ajuda aki!

4 respostas
P

ta acontecendo esse erro quando eu tenho me conectar do cliente ao servidor:
Connection refused to host: localhost; nested exception is:
java.net.ConnectException: Connection refused: connect

Pelo que me parece o erro eh pq eu to rodando + de 1 servidor … ae da refuse na hora do cliente conectar… Como faco pra fechar os servidores?? Aki msm reiniciando o pc da o erro.

4 Respostas

cassio

Olá!

Quando vc vai especificar a url com o endereço (o ip da maquina remota ou o localhost) vc pode tbm especificar em qual porta é pra conectar.

localhost:1098

No exemplo estou especificando que é pra conectar no localhost, porém pela porta 1098. Para o RMI, a porta default é a 1099, caso não seja especificada nenhuma outra. Logo, se vc tenta conectar dois servidores sem especificar a porta, vai dar esse erro mesmo, os dois servidores tentarão usar a porta 1099. Inicialize o primeiro servidor da maneira que vc está fazendo, porém o segundo faça localhost:1098, passando para ele outra porta válida :slight_smile:

Abraço!

Luca

Olá

Pergunta boba: mais de um servidor na mesma máquina escutando a mesma porta?

[]s
Luca

P
package Servidor;

import java.rmi.registry.Registry;
import java.rmi.registry.LocateRegistry ;
import java.rmi.RemoteException;
import java.rmi.AlreadyBoundException;
import java.rmi.server.UnicastRemoteObject;
import java.io.IOException;
import Beans.*;

public class ServidorImpl implements Servidor{  
	private Cadastro cadastro;  
	public ServidorImpl(){  
		cadastro = new Cadastro();  
		inicia();  
	}     
	public Cadastro getCadastro(){  
		return cadastro;  
	}   
	public void inicia(){  
		try{        
			Servidor stub = (Servidor) UnicastRemoteObject.exportObject (this, 0);  
			Registry registry = LocateRegistry.createRegistry(6000);     
			registry.bind ("War20", stub);  
			
			System.out.println ("Servidor iniciado");   
			}catch(RemoteException Re){      
				System.out.println(Re.getMessage());  
			}catch(AlreadyBoundException ABe){   
				System.out.println(ABe.getMessage());  
			}catch(IOException IOe){    
				System.out.println(IOe.getMessage());  
			}   
		} 
	public static void main(String args[]){   
			new ServidorImpl ();
	}
}

se eu implementar esse servidor para herdar um JFrame e talz... fazer uma interface legal e talz quando eu clicar em sair ele fecha o servidor neh?

P

Eu acho q ta rodando 2 servidores com o mesmo nome e mesma porta e na mesma maquina sim… pq eu rodei 1 vez, implementei, rodei novamente… mais achei q o 1º ia ser anulado… agora nem com restart ou desligando o pc esse erro sai!!!

Criado 26 de outubro de 2006
Ultima resposta 27 de out. de 2006
Respostas 4
Participantes 3