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

Recibir xml en servicio web

Estas en el tema de Recibir xml en servicio web en el foro de Java en Foros del Web. Hola estoy haciendo un servicio web con NetBeans y al enviar un xml al servicio web éste no me lo reconoce como un String, haber ...
  #1 (permalink)  
Antiguo 12/12/2007, 10:09
 
Fecha de Ingreso: junio-2007
Mensajes: 46
Antigüedad: 16 años, 10 meses
Puntos: 0
Recibir xml en servicio web

Hola estoy haciendo un servicio web con NetBeans y al enviar un xml al servicio web éste no me lo reconoce como un String, haber si alguien me puede ayudar, ahí pongo el código que tengo hecho hasta ahora.


Cita:
public static void main(String[] args) {
String xmlString = "<a>SEVILLA</a>";

try{
String serv=
"<Cuadrado xmlns=\"http://tmp/\">" +
"<entrada xmlns=\"\">" + xmlString +
"</entrada>" +
"</Cuadrado>";
String rutaServicio = "http://localhost:8084/EjemploWeb3/Servicio";
String uri = "http://tmp";

String resultado = webServCall(serv,rutaServicio,uri);
System.out.println(resultado);
} catch (Exception ex){
System.out.println("Error producido en llamada a Servicio web: "+ ex.getMessage());
}
}
El webServCall es donde monto mi mensaje Soap y es el siguiente:

Cita:
public static String webServCall(String param, String rutaServicio, String uri) throws Exception {
Document doc = null;
Element personal = null;

String resultado="";
try{
DocumentBuilder docBuilder = DocumentBuilderFactory.newInstance().newDocumentBu ilder();

StringReader reader = new StringReader(param);
InputSource source = new InputSource(reader);
doc = docBuilder.parse(source);
if(doc==null){
throw new org.apache.soap.SOAPException(org.apache.soap.Cons tants.FAULT_CODE_CLIENT,"Error en parseo");
}
//CONSTRUIR MENSAJE EN SOAP
org.apache.soap.Envelope envelope = new org.apache.soap.Envelope();
Vector bodyElements = new Vector();
bodyElements.add(doc.getDocumentElement());
org.apache.soap.Body body = new org.apache.soap.Body();
body.setBodyEntries(bodyElements);
envelope.setBody(body);

//ENVIAMOS MENSAJE
org.apache.soap.messaging.Message msg = new org.apache.soap.messaging.Message();
msg.send(new java.net.URL(rutaServicio),uri,envelope);


org.apache.soap.transport.SOAPTransport st = msg.getSOAPTransport();
BufferedReader br = st.receive();
String line = br.readLine();
if(line==null)
throw new Exception("SOAP ERROR");
else{
while(line!=null) {
resultado += line;
line = br.readLine();
}
}
} catch (Exception e){throw e;}

return resultado;
}

}

Y la función en el Servicio web es la siguiente:

Cita:
@WebService()
public class Servicio {
public String Cuadrado(@WebParam (name = "entrada") String entrada) throws Exception {

return entrada;
}
}

Como se ve el ejemplo que estoy haciendo es bastante sencillo solo quiero que me muestre por pantalla lo que le introduzco a la función pero ésta nunca me devuelve nada.

Muchas gracias
  #2 (permalink)  
Antiguo 12/12/2007, 10:46
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 2 meses
Puntos: 90
Re: Recibir xml en servicio web

pediré que te muevan el post al foro de java, ya que tu problema es de java y no de XML

Saludos
__________________
Esteban Quintana
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:08.