2010-12-16 16 views
5

Quiero leer una respuesta de una llamada de servicio web no-wsdl usando JAXB. Estoy enviando una solicitud POST utilizando HttpURLConnection, y obteniendo una respuesta. Mi pregunta es: ¿hago un documento XML del flujo de respuesta, y luego uso jaxb para crear los objetos java? O, ¿es posible usar jaxb sobre la marcha con el flujo de respuesta? Esta será una aplicación web, y no podré almacenar un documento xml generado en ninguna parte, así que si necesito hacer un documento xml, ¿cómo lo almaceno para usar jaxb, si no puedo hacer el jaxb en el ¿mosca?XML de respuesta de análisis con JAXB

Respuesta

6

Aquí se muestra un ejemplo:

String uri = 
    "http://localhost:8080/CustomerService/rest/customers/1"; 
URL url = new URL(uri); 
HttpURLConnection connection = 
    (HttpURLConnection) url.openConnection(); 
connection.setRequestMethod("GET"); 
connection.setRequestProperty("Accept", "application/xml"); 

JAXBContext jc = JAXBContext.newInstance(Customer.class); 
InputStream xml = connection.getInputStream(); 
Customer customer = 
    (Customer) jc.createUnmarshaller().unmarshal(xml); 

connection.disconnect(); 

Para obtener más información, véase: