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

Problema al convertir ip Socket

Estas en el tema de Problema al convertir ip Socket en el foro de Java en Foros del Web. Hola buena tarde a todos. El motivo del mensaje es el siguiente, estoy desarrollando un servidor tcp el cual tiene que reenviar la información que ...
  #1 (permalink)  
Antiguo 13/11/2017, 14:16
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 7 años, 1 mes
Puntos: 511
Problema al convertir ip Socket

Hola buena tarde a todos.

El motivo del mensaje es el siguiente, estoy desarrollando un servidor tcp el cual tiene que reenviar la información que me llega si es necesario, la forma en la cual realiza dicho proceso es que tengo un identificador para cada uno de los paquetes que me llegan y verifico en mi base de datos si es necesario reenviar dicha información a otro servidor y puerto especifico, al momento de obtener la ip a la que deseo enviar la información me genera el siguiente error

Código bash:
Ver original
  1. java.lang.NumberFormatException: For input string: "127.0.0.1"

La información se obtiene de la siguiente manera:

Código MySQL:
Ver original
  1. servidor  = |127.0.0.1|192.168.1.59|
  2. pruerto   = |566|399|458|

el código que tengo en dicha función del sistema es la siguiente:

Código Java:
Ver original
  1. //request = identificador|datos|datos|y más datos
  2. //server = |127.0.0.1|192.168.1.59|
  3. //port = |566|399|458|
  4. public void serverTpcSendData (String request, String server, String port)
  5. {
  6.     Socket socketSend;
  7.     String isServerSend = server.substring(1, server.length() -1);
  8.     String[] isFinalServerSend = isServerSend.split("\\|");
  9.     String isPortSend = server.substring(1, server.length() -1);
  10.     String[] isFinalPortSend = isPortSend.split("\\|");
  11.  
  12.     for (int i = 0; i < isFinalServerSend.length; i++) {
  13.         System.out.println(isFinalServerSend[i] + "\n");
  14.         try {
  15.             final String HOST = "'" + isFinalServerSend[i].toString() + "'";
  16.             final int PORT  = Integer.parseInt(isFinalPortSend[i]);
  17.  
  18.             socketSend = new Socket(HOST, PORT);
  19.             DataOutputStream sendMessage = (DataOutputStream) new java.io.DataOutputStream(socketSend.getOutputStream());
  20.             sendMessage.write_string(request + '\n');
  21.             socketSend.close();
  22.         } catch (Exception e) {
  23.             System.out.println(e.toString());
  24.         }
  25.     }
  26. }

Realice varias formas del poder convertir el texto para poder realizar la conexión del socket sin embargo el error sigue siendo el mismo y recurrí aquí para ver si alguien me podría ayudar o darme otras posibles opciones para solucionar dicha problematica .

Sin más por el momento agradezco su atención.
Saludos cordiales
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #2 (permalink)  
Antiguo 13/11/2017, 17:18
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.334
Antigüedad: 9 años, 2 meses
Puntos: 169
Respuesta: Problema al convertir ip Socket

Mira el valor que está tomando isFinalPortSend[i] antes de hacer Integer.parseInt(isFinalPortSend[i])

Yo creo que el problema está en la siguiente linea

String isPortSend = server.substring(1, server.length() -1);

que debería ser

String isPortSend = port.substring(1, port.length() -1);

ains, el copypaste...
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}



La zona horaria es GMT -6. Ahora son las 04:58.