Я отправляю вместе с Почтальоном запрос XML Post на Java Rest Api, и я хочу перехватить XML в переменной или объекте Java
Я пробовал это:
@Stateless
@Path("/cererepost")
public class HelloWorldResource {
Resp x = new Resp();
@EJB
private NameStorageBean nameStorage;
/**
* Retrieves representation of an instance of helloworld.HelloWorldResource
* @return an instance of java.lang.String
*/
@POST
@Produces("application/xml")
@Consumes(MediaType.APPLICATION_XML)
public Response postMsg() throws ParserConfigurationException, MalformedURLException, IOException, SAXException {
/*
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = (Document) db.parse(new URL("http://localhost:8080/REST4 /resources/cererepost").openStream());
*/
URL obj = new URL("http://localhost:8080/REST4/resources/cererepost");
URLConnection conn = obj.openConnection();
//get all headers
Map<String, List<String>> map = conn.getHeaderFields();
for (Map.Entry<String, List<String>> entry : map.entrySet()) {
System.out.println("Key : " + entry.getKey() +
" ,Value : " + entry.getValue());
}
//get header by 'key'
String server = conn.getHeaderField("Server");
Response response = Response.status(200).type(MediaType.TEXT_XML).entity(server).build();
return response;
}
}
Этоэто полный код.
Часть, которую я надеюсь получить и ответить, как изменить это:
URL obj = new URL("http://localhost:8080/REST4/resources/cererepost");
URLConnection conn = obj.openConnection();
//get all headers
Map<String, List<String>> map = conn.getHeaderFields();
for (Map.Entry<String, List<String>> entry : map.entrySet()) {
System.out.println("Key : " + entry.getKey() +
" ,Value : " + entry.getValue());
}
//get header by 'key'
String server = conn.getHeaderField("Server");
Response response = Response.status(200).type(MediaType.TEXT_XML).entity(server).build();
return response;
Возвращается на мгновение после того, как запрос Post сделан из Почтальона. возвращает имя сервера. Я хотел бы вернуть отправленный xml, чтобы сохранить переменные в базе данных.
Заранее спасибо