En una de esas historias que seguramente tienen una explicación y razón por la cual suceden las cosas, hoy me encontré con un escenario particular.
Tengo una aplicación web hecha con JSF en Java que conecta con un servicio REST para enviar datos, entre los que se encuentran, los bytes de dos archivos que son transferidos como anexos a la petición. Resulta que tenía un incidente reportado con esta transferencia, describiendo que uno de los archivos llegaba corrupto.
Se arregló la recopilación y envío de los bytes del archivo reportado y estaba listo para hacer la prueba. Sin embargo, para poder realizar esta prueba, se necesita consumir otros tantos datos por servicios web y cuando se usa la última interfaz (la que envía los archivos como anexos), el evento dispara procesos internos que, con cada prueba, nos deja sin escenarios para repetir el escenario.
Por este motivo generé un servicio dummy que no hace nada más que recibir la petición, tomar los bytes del segundo archivo anexo y escribirlo en disco. Esto para validar que los bytes llegan completos, que se puede reescribir el archivo y una vez en disco, se puede abrir y ver como el original.
El script PHP funcionaba correctamente desde el navegador web. Posteriormente lo probé en SOAP UI y tampoco tuve inconvenientes, por lo que configuré el portal web para apuntar a este servicio dummy; ahí es donde la inconsistencia comenzó.
Por alguna razón cuando el portal Java pretendía consumir el servicio arrojaba una excepción Connection Refused indicando que no podía conectar con el servicio.
-Pero… si lo validé desde el navegador y usando SOAP UI…

Hoy no tenía intenciones de liarme y entre búsqueda y búsqueda, encontré que por localhost no se podía conectar al servicio. Cambié la URL, sustituyendo «localhost» por la dirección IP donde estaba publicado el script php y… apareeentemente eso lo solventó.
¿Por qué?
¡Ni idea!
Deja un comentario