Foros del Web » Programación para mayores de 30 ;) » Java »

Cliente Servidor en Java

Estas en el tema de Cliente Servidor en Java en el foro de Java en Foros del Web. Hola, tengo un problema, espero me lo puedan resolver. Cree dos programas en Java, un cliente y un servidor, corro el servidor en una maquina ...
  #1 (permalink)  
Antiguo 13/01/2004, 15:04
 
Fecha de Ingreso: enero-2004
Ubicación: MORELOS
Mensajes: 2
Antigüedad: 20 años, 4 meses
Puntos: 0
Cliente Servidor en Java

Hola, tengo un problema,
espero me lo puedan resolver. Cree dos programas en Java, un cliente y un servidor, corro el servidor en una maquina y después el cliente en la misma maquina y si se conecta, igual con el término "localhost" que con la direccion IP "192....", el problema viene después cuando intento correr un servidor en una maquina y el cliente en una maquina distinta, en la cual me aparece el siguiente mensaje "java.security.AccessControlException: access denied (java.net.SocketPermission 192.168.0.98:5000 connect,resolve)"... el cual no he podido resolver desde hace un tiempo, espero que alguien sepa como ayudarme
gracias
Atte. Dalilah
  #2 (permalink)  
Antiguo 13/01/2004, 19:29
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 21 años, 10 meses
Puntos: 10
Esto puede deberse a varias razones
-El PC que esta corriendo el servidor esta con algun Firewall que esta tapando las conecciones por esos puertos, ZoneAlarm por ejemplo.
-que la Maquina en la que estas corriendo el servidor esta dentro de una red local y y sale a internet por medio de Router, NAT, Proxy o similares y que el cliente esta fuera de la red local.
-que el programa cliente el especifiques mal la direccion IP de donde se encuentra el servidor.

Fijate bien en estas cosas, y si puedes, si te sigue dando problemas, danos un poco mas de detalles al respecto.

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #3 (permalink)  
Antiguo 14/01/2004, 15:53
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 7 meses
Puntos: 51
Hola,
Eumm, la verdad es que no tiene nada que ver con Firewalls o problemas de red. :)

Es una cuestion del modelo de seguridad de Java.
Desde hace unas cuantas versiones Cuando desarrollas una aplicacion, si instalas un SecurityManager (por ejemplo usando RMI) entonces tu aplicacion pasa a ser como un applet: NO TIENE PERMISOS PARA CASI NADA.

Entre esos permisos que NO tienes está el de poder conectarte a otra maquina, asi que para que te funcione tienes que darle permisos explicitos para conectarse.

Para mas informacion sobre el modelo de seguridad, puedes mirarte, entre otras, estas referencias:
http://java.sun.com/j2se/1.4.2/docs/...rmissions.html
http://java.sun.com/docs/books/tutor...rity1.2/tour2/

Suerte con ello!
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.
  #4 (permalink)  
Antiguo 14/01/2004, 16:04
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 21 años, 10 meses
Puntos: 10
No refuto nada de loq ue dices, pero hace como 2 mese hice un Chat en Java manejado con socket y cliente y servidor, y una vez tuve los problemas que mencine arriba, y si era por firewall, ya qye tu al socket le dices por que puerto entrara y al server lke dices que puesrto escuchar, y si el puesrto esta bloqueado, bueno, nada que ver con java ni applets.

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #5 (permalink)  
Antiguo 15/01/2004, 11:09
 
Fecha de Ingreso: enero-2004
Ubicación: MORELOS
Mensajes: 2
Antigüedad: 20 años, 4 meses
Puntos: 0
Gracias por sus respuestas ya se pudo resolver el problema,
todo era cuestion de modificar los permisos del archivo java.policy
en
C:\jdk1.3\jre\lib\security\java.policy AND
C:\Program Files\JavaSoft\JRE\1.3\lib\security\java.policy
y modificar este codigo
grant{
// allows anyone to connect to un-privileged ports
permission java.net.SocketPermission "*:1024-65535",
"connect,accept,listen,resolve";
permission java.net.SocketPermission "localhost:80",
"connect,accept,listen,resolve";
};

  #6 (permalink)  
Antiguo 15/01/2004, 12:29
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 7 meses
Puntos: 51
Cita:
Mensaje Original por goncafa
No refuto nada de loq ue dices, pero hace como 2 mese hice un Chat en Java manejado con socket y cliente y servidor, y una vez tuve los problemas que mencine arriba, y si era por firewall, ya qye tu al socket le dices por que puerto entrara y al server lke dices que puesrto escuchar, y si el puesrto esta bloqueado, bueno, nada que ver con java ni applets.

Saludos
Hola Gonzalo,
No pasa nada, hombre, me puedes refutar que yo tambien me equivoco a veces ;).
Yo no digo que no pueda haber problemas de firewall, como había en tu caso, pero si ese fuese el problema le daría una java.io.IOException (de que no se puede conectar o así), pero en este caso la excepcion que se lanza es java.security.AccessControlException, y eso indica un problema de política de seguridad.
Es una diferencia sutil, pero indica el tipo de problema.
Saludos!
  #7 (permalink)  
Antiguo 15/01/2004, 15:55
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 21 años, 10 meses
Puntos: 10
pues veo que era yo el equivocado
y que bueno que aqui se pueda aprender como se debe

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #8 (permalink)  
Antiguo 09/03/2011, 12:49
Usuario no validado
 
Fecha de Ingreso: julio-2008
Ubicación: Quito
Mensajes: 76
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Cliente Servidor en Java

Chicos una consulta:

Miren diseñe una aplicación conectada a MySQL.
Generé el .jar, en mi computador (servidor) funciona perfecto, pero al momento de abrir este .jar en otra pc vía red no funciona, se ejecuta la aplicación pero no actualiza con la bdd, estoy haciendo al mal... Explico los pasos que hice:

Server:

Genere el .jar de mi aplicación: modulocliente.jar

La carpeta dist comparto en la red

PC1

Voy por inicio, ejecutar, ingreso la dirección de mi server: \\mov01\dist

Se me abre mi aplicación, pero no consulta los datos a la bdd, no actualiza, no hace nada!!!

Porque puede ser???

Estoy haciendo algo mal o debo hacerlo con sokets??
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:13.