从cxf消息

时间:2016-09-14 09:24:36

标签: java web-services cxf interceptor

我正在尝试编写一个cxf拦截器,它会将我的应用程序的所有传入请求转发到另一个应用程序。但是对于POST请求,我无法获取请求的正文。

我使用的代码如下:

String body = message.getContent(String.class);

然而身体是空的。我查看了cxf代码&看起来你必须指定确切的类(Ex:ArrayList)来获取正文。我的应用程序有多个这样的消息类。我想知道是否有一种方法可以避免为我的每个POJO课程编写多个检查。在一个if中完成。

2 个答案:

答案 0 :(得分:4)

您可以调用message.getContent(InputStream.class)并使用CXF IOUtils读取String。有关详细信息,请参阅javatips.net/blog/cxf-interceptor-example

答案 1 :(得分:0)

尝试:

XMLStreamReader body  = message.getContent(XMLStreamReader.class);