我正在开发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 对象。有没有直接的方法呢?
答案 0 :(得分:0)
您可以在转换为对象之前和之后记录请求/响应。这并不像你想象的那么简单,关键是实现一些这样的界面:
public class PrettyPrinterLoggingFilter implements ContainerRequestFilter, ContainerResponseFilter, WriterInterceptor {
..
}
并插入现有基础架构。我已经写了small library来做这个,为了一个工作的例子。