¿Alguna ayudita?
ClienteUDP,java
Código
package proyecto.socketudp; import java.net.*; /** Ejemplo que implementa un cliente de eco usando UDP. */ public class ClienteUDP { if (argv.length != 3) { } try { // Creamos el socket no orientado a conexión // (en cualquier puerto libre) // Establecemos un timeout de 30 segs sDatagram.setSoTimeout(30000); // Obtenemos la dirección IP del servidor // (recibida en el primer argumento por linea de comandos) // Obtenemos el puerto del servidor // (recibido en el segundo argumento por linea de comandos) // Obtenemos el mensaje // (tercer argumento de la linea de comandos) byte[] envInfo = new byte[1024]; envInfo = mensaje.getBytes(); // Preparamos el datagrama que vamos a enviar y lo enviamos envInfo, envInfo.length, dirServidor, puertoServidor ); // Enviamos el datagrama sDatagram.send(envPaquete); "CLIENTE: Enviando " + envPaquete.getAddress().toString() + ":" + envPaquete.getPort() ); // Preparamos el datagrama de recepción byte[] recInfo = new byte[1024]; // Recibimos el mensaje sDatagram.receive(recPaquete); "CLIENTE: Recibido " + " de " + recPaquete.getAddress().toString() + ":" + recPaquete.getPort() ); } catch (SocketTimeoutException e) { } finally { // Cerramos el socket para liberar la conexión sDatagram.close(); } } }
ServidorUDP.java
Código
package proyecto.socketudp; import java.net.*; /** Ejemplo que implementa un servidor de eco usando UDP. */ public class ServidorUDP { if (argv.length != 1) { } try { // Creamos el socket datagrama // Establecemos un timeout de 30 segs sDatagram.setSoTimeout(30000); byte array[] = new byte[1024]; while (true) { // Preparamos un datagrama para recepción // Recibimos el mensaje sDatagram.receive(dgramRec); // Recabamos informacion int puertoCliente = dgramRec.getPort(); "SERVIDOR: Recibido " + " de " + dirCliente.toString() + ":" + puertoCliente ); // Preparamos el datagrama que vamos a enviar mensaje.getBytes(), mensaje.getBytes().length, dirCliente, puertoCliente ); // Enviamos el mensaje sDatagram.send(dgramEnv); "SERVIDOR: Enviando" + " de " + dgramEnv.getAddress().toString() + ":" + dgramEnv.getPort() ); } } catch (SocketTimeoutException e) { } } }