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

Comunicacion entre cliente java y servidor C (Sockets)

Estas en el tema de Comunicacion entre cliente java y servidor C (Sockets) en el foro de Java en Foros del Web. Hola a todos Tengo un problema mas o menos. Tengo un servidor en linux, el cual trabaja con sockets. Este servidor esta hecho en C, ...
  #1 (permalink)  
Antiguo 26/04/2007, 09:48
 
Fecha de Ingreso: octubre-2004
Mensajes: 143
Antigüedad: 19 años, 6 meses
Puntos: 0
Comunicacion entre cliente java y servidor C (Sockets)

Hola a todos

Tengo un problema mas o menos.

Tengo un servidor en linux, el cual trabaja con sockets. Este servidor esta hecho en C, y las aplicaciones clientes hasta el momento tambien son en C, por ende la comunicación entre ambas es casi nativa.

El problema, es que ahora quiero construir un cliente Java que se comunique con este servidor. Hasta ahí todo ok, salvo que no se como enviarle la información al servidor.

¿Por qué ?

El problema es que el servidor tiene una serie de estructuras para el envio de la información.

Me explicó.

Cuando esta en el cliente (en C), el programa construye una struct con todos los datos a enviar al servidor. Luego esta estrucutura es enviada, y como es la misma en el servidor, el servidor la "castea" y lee su contenido.

La struct que se envia es la siguiente, junto con un esbozo del códgio de envio.
Código:

Código PHP:

struct str_remote_block
{
   
short type;
   
short len;
};
 
struct str_response
{
   
RBLCK block;
   
char  data[REMOTE_BUFSIZE+RRWLEN];
};

..
..
str_response r;
r.block.type 1;
r.block.len 50;
memcpy r.data  datos sizeof (r.data ) ); 
Ahora no se como hacer esto en Java. Quizas tenga que en vez de hacer las structs, hacer las mismas clases, y enviar estas ??? La verdad es que no se me ocurre como hacer esto :S

Espero que me puedan dar una luz de como solucionar esto.

Gracias por sus comentarios.

Saludos
  #2 (permalink)  
Antiguo 26/04/2007, 11:39
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Re: Comunicacion entre cliente java y servidor C (Sockets)

Hola:

Aquí tienes como comunicar java con C con sockets.

Si el servidor de C corre en un PC, tendrás problemas con el ordenamiento de bytes en los enteros. En el enlace anterior también se comenta algo sobre el tema.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 23/08/2007, 10:08
 
Fecha de Ingreso: octubre-2004
Mensajes: 143
Antigüedad: 19 años, 6 meses
Puntos: 0
Re: Comunicacion entre cliente java y servidor C (Sockets)

Holas..

Por lo que he visto.. al final este servidor trabaja como un servicio identico al apache, entonces, este recibe una petición a un puerto específico y despues crea un hijo por el cual se conectan a traves de un puerto distinto al genérico..

Me imagino que debe similar a la conexión desde Java a apache o un servidor webn....

Hasta ahora no encuentro nada dnde se mencione como conectarse a un servidor, asi como apache.. alguien sabe de eso..

Saludos
  #4 (permalink)  
Antiguo 23/08/2007, 14:33
 
Fecha de Ingreso: agosto-2003
Mensajes: 272
Antigüedad: 20 años, 8 meses
Puntos: 0
Re: Comunicacion entre cliente java y servidor C (Sockets)

El servidor acepta peticiones http? por que si es así podrias hacer un servlet de nombre porejemplo miServlet y lo llamas así.


Http://localhost:8080/miServlet

y ahi programas que se comunique conla logica (dominio) de la aplicacion.


¿Sabes como hacer un servlet?

Saludos
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 03:28.