如何使用JAXB自动在休息Web服务中记录请求和响应xml?

时间:2014-10-08 06:26:47

标签: java xml web-services rest jaxb

我正在开发java中的rest web服务。我需要使用JAXB 在其余网络服务中自动记录请求和响应xml。

以下是我的休息服务。

    @POST 
    @Consumes(MediaType.APPLICATION_XML)
    @Produces(MediaType.APPLICATION_XML)
    @Path("/xmlCall")
    @Override
    public XmlCallOutput postXmlCall(Xmlcall xmlCall){

            return xmlCallInService.acceptXmlCallData(xmlCall);

    }

在这里,我想以xml的形式记录 Xmlcall XmlCallOutput 对象。有没有直接的方法呢?

1 个答案:

答案 0 :(得分:0)

您可以在转换为对象之前和之后记录请求/响应。这并不像你想象的那么简单,关键是实现一些这样的界面:

public class PrettyPrinterLoggingFilter implements ContainerRequestFilter, ContainerResponseFilter, WriterInterceptor {
..
}

并插入现有基础架构。我已经写了small library来做这个,为了一个工作的例子。