Java - Conexión de Sockets entre Java y C

 
Vista:

Conexión de Sockets entre Java y C

Publicado por Guillermo (3 intervenciones) el 10/04/2006 20:40:56
Gente, tengo que hacer un programa de java que conecte a este último con un socket de C que ya está hecho por otra persona. El asunto es que hice el socket de java y no funciona al intentar conectarme con el de C. No tira ningún error, simplemente cuando escribo en la salida no hace nada. Aparentemente por lo que vi cuando el sevidor hecho en C recibe la petición de conexión desde Java, esta se cae. ¿Cuál puede ser el problema?
Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:Conexión de Sockets entre Java y C

Publicado por chuidiang (950 intervenciones) el 10/04/2006 23:19:19
Hola:

Java y C (sobre todo si este últmo corre en un PC, sea windows o linux) son lo suficientemente distintos a nivel de socket como para que todo vaya muy mal si no se hace de forma adecuada.

Hay dos problemas gordos principales:

- Si C corre en PC, los ordenes de bytes de los enteros están al revés. Si en C no se llama a las funciones htonl() y compañía para hacer las conversiones en el orden de los bytes, no se entenderán nunca.

- Java envía los datos como le da la gana. Si te fias de las clases Serializable y las envías tal cual, nunca se entenderán con C (ni con cualquier otro lenguaje que no sea java).

En http://www.chuidiang.com/java/sockets/cpp_java/cpp_java.html tienes un pequeño tutorial de cómo conectar java con C. Aunque se menciona C de linux, los conceptos también te valen para windows.

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar