Bueno.... hoy me toco pelear de nuevo contra las malignas fuerzas de los frameworks no estandarizados... el enemigo era NuSoap.
NuSoap es una herramienta que sirve para crear y consumir servicios web desde PHP.... escucharon bien... PHP!!!
Y pues... como era de esperarse hace cosas raras... genera en webservices estilo RPC codificados... y pues... ya desde ahi nuestro buen amigo JAX-WS no funciona... hay que volver al temible JAX-RPC
Yo no le se muy bien al JAX-RPC... he tenido experiencias traumaticas.... nunca funciona... debe tener alguna configuración rara o algo...
Asi que siempre recurro al poderoso Axis2... normalmente puede contra todos esos webservices locos a los que me he tenido que conectar...
Ponerlo en cualquier lado...
Entrar con consola a la carpeta bin y ahi...
mkdir output
./wsdl2java.sh -uri http://ruta/a/webservice?wsdl -o output/prueba/
cd output/prueba
AXIS2_HOME="/ruta/a/axis2" ant
Nos generara en la carpeta output/prueba/bin/ un jar con el codigo Stub para llamar al webservice...
Desde Netbeans... deben agregar las librerias de Axis2... esas las agregan desde Herramientas->Complementos->Plugins disponibles->Axis2 Support... luego Propiedades->Bibliotecas->Agregar Jar/Carpeta... buscan el jar que generamos... ahi mismo deben entrar a Agregar Biblioteca y buscar Axis 2
Y pues.. el codigo java depende mucho de como se llame el paquete de tu webservice... seria simple como
ws.claseStub servicio = ws.claseStub();
ws.claseStub.Metodo met = new ws.claseStub.metodo();
met.setParametro("Algo");
//La magia para el NuSoap esta aqui!!
servicio._getServiceClient().getOptions().
setProperty(org.apache.axis2.transport.http.HTTPConstants.CHUNKED,
servicio.metodo(met);
Y asi amigos... nos comunicamos con NuSoap.... el maldito no soporta el tipo de transporte HTTP chunk como un webservice normal... pero tuvieron que pasar varios tcpdumps para llegar a esa conclusión... espero que le quite el dolor de cabeza a alguien