java - CXF 服务器端记录到表

标签 java web-services spring cxf

在 CXF 中,您可以使用以下方法启用日志记录:

<cxf:bus>
   <cxf:features>
      <cxf:logging/>
   </cxf:features>
</cxf:bus>

来源:http://cxf.apache.org/docs/configuration.html

一切似乎都进入文件或控制台,并且似乎也可以使用 Log4j 进行配置。

我的问题是,如何在服务器端启用日志记录,以便可以拦截这些原始请求和响应,并将它们与与服务调用相关的其他应用程序特定信息一起存储在数据库的表中。

这都是服务端服务实现类。

最佳答案

您引用的示例是执行基本日志记录的最简单的配置。如果您查看之前的示例,您可以看到一种稍微更扩展的记录拦截器的方法:

<cxf:bus>
    <cxf:inInterceptors>
        <ref bean="logInbound"/>
    </cxf:inInterceptors>
    <cxf:outInterceptors>
        <ref bean="logOutbound"/>
    </cxf:outInterceptors>
    <cxf:inFaultInterceptors>
        <ref bean="logOutbound"/>
    </cxf:inFaultInterceptors>
</cxf:bus> 

这里,logInboundlogOutboundlogOutbound bean 是 CXF 拦截器接口(interface)的任意实现。您可以实现自己的拦截器 bean 来执行您选择的任何类型的日志记录,包括数据库日志记录。

关于java - CXF 服务器端记录到表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3506308/

相关文章:

java - Spring 批处理,记录跳过的记录/行

java - 将属性传递给 Spring Security 应用程序中的 View

java - 如何在 Spring 中禁用代理 Bean

java - JAVA 中的实时文本流

java - 将谷歌地图集成到 DJI mapWidget 中

web-services - 是否有提供纬度/经度地形类型的 Web 服务?

javascript - 使用javascript调用webservice而不使用jQuery ajax?

web-services - 从技术上讲,要创建 SOAP 消息,WSDL 文件是必须的吗?

java - java中局部变量全局更新

java - 在 Java : 中迭代 "this"