Conexão não local com RMI e JWS

3 respostas
AugustoCSS

e o erro? qual é?

3 Respostas

A

Bom, aparentemente isso eh um problema de rede,

Voce checou se alguem de fora consegue enchergar a porta do seu servidor rmi aberta ? se nao consegue é sinal que provavelmente voce nao esta fazendo o roteamento das conexcoes da internet para a maquina que esta rodando o servico

Tenta de uma maquina fora da sua rede local realizar uma conexcao no seu servidor rmi

tenta isso: telnet ip porta_onde_o_rmi_esta_registrado

se der connection refused ou no router to host, entao de fato o problema é de roteamento

Nesse caso deve-se mecher no seu roteador para que ele direcione o servico rmi para a maquina certa dentro de sua rede local

U

Boa tarde,

Estou desenvolvendo meu TCC e estou utilizando RMI para a comunicação do cliente na qual a distribuição para os usuários é feita através do Java Web Start.

Na minha rede local, o sistema está funcionando perfeitamente, mas tenho alguns vendedores que necessitam se conectar ao servidor, como utilizo Java Web Start. eles tem acesso a aplicação fora da minha rede local. Bom, o problema é que não consigo conectar meu cliente aos meus serviços registrados (RMI). Estou procurando há tempos como fazer essa conexão e ainda não consegui me conectar.

A aplicação é baixada pelo Java Web Start normalmente, só não consigo a conexão.

Como devo proceder ? Quais são os passos necessários para realizar tal conexão ?

Agradeço desde já.

U

Bom dia,

Realmente havia um problema de firewall, mas agora executei o telnet de foroa da minha rede local e conectei normalmente. A aplicação é iniciada porém da o seguinte erro na hora a conexão:

java.lang.IllegalArgumentException at com.sun.deploy.net.proxy.DeployProxySelector.select(Unknown Source) at java.net.SocksSocketImpl.connect(Unknown Source) at java.net.Socket.connect(Unknown Source) at java.net.Socket.connect(Unknown Source) at java.net.Socket.<init>(Unknown Source) at java.net.Socket.<init>(Unknown Source) at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(Unknown Source) at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(Unknown Source) at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source) at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source) at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source) at sun.rmi.server.UnicastRef.invoke(Unknown Source) at java.rmi.server.RemoteObjectInvocationHandler.invokeRemoteMethod(Unknown Source) at java.rmi.server.RemoteObjectInvocationHandler.invoke(Unknown Source) at $Proxy0.getService(Unknown Source) at br.unipar.estagio.ServerConnection.bindService(ServerConnection.java:73) at br.unipar.estagio.ServerConnection.connect(ServerConnection.java:40) at br.unipar.estagio.ClientStartup.<init>(ClientStartup.java:32) at br.unipar.estagio.Startup.main(Startup.java:41) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.sun.javaws.Launcher.executeApplication(Unknown Source) at com.sun.javaws.Launcher.executeMainClass(Unknown Source) at com.sun.javaws.Launcher.doLaunchApp(Unknown Source) at com.sun.javaws.Launcher.run(Unknown Source) at java.lang.Thread.run(Unknown Source)

Alguma idéia ?

Inicio meu servidor desta forma:

java -Djava.rmi.server.hostname=rmi://myserver -Djava.rmi.server.useLocalHostname=false -Djava.security.policy=policy.txt -jar MyJar.jar -Server

Obrigado.

Criado 5 de outubro de 2006
Ultima resposta 6 de out. de 2006
Respostas 3
Participantes 3