Получить опубликованный XML из объекта HttpServletRequest

У меня есть фильтр, который получает HttpServletRequest, и запрос-это сообщение, которое состоит из xml, который мне нужно прочитать в моем методе фильтра. Каков наилучший способ получить опубликованный xml из объекта HttpServletRequest.

1 ответов


зависит от того, как клиент отправил его.

если он был отправлен как тело запроса raw, то используйте ServletRequest#getInputStream():

InputStream xml = request.getInputStream();
// ...

если он был отправлен как обычный application/x-www-form-urlencoded параметр запроса, затем используйте ServletRequest#getParameter():

String xml = request.getParameter("somename");
// ...

если он был отправлен как загруженный файл во вкусе multipart/form-data часть, а затем использовать HttpServletRequest#getPart().

InputStream xml = request.getPart("somename").getInputStream();
// ...

это были способы, поддерживаемые стандартным API сервлетов. Другой способы могут потребовать другого или стороннего API (например, SOAP).