从cxf消息获取Http请求主体

Sur*_*non 3 java web-services cxf interceptor

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

我正在使用的代码如下所示:

String body = message.getContent(String.class);
Run Code Online (Sandbox Code Playgroud)

但是,主体为null。我调查了cxf代码,看起来您必须指定确切的类(例如:ArrayList)来获取主体。我的应用程序具有多个此类消息类。我想知道是否有一种方法可以避免为每个POJO类编写多个检查并在一个检查中完成if

Bal*_*ika 5

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