加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

CXF记录WebService的soap日志

发布时间:2020-12-16 23:05:37 所属栏目:安全 来源:网络整理
导读:cxf本身就支持日志功能,能打印传入传出的soap报文,但是需要配置一下。? 配置步骤如下:? 我这里配置的是cxf结合spring做的WebService,参考http://ajita.iteye.com/blog/1740754? 1.在spring配置文件中的jaxws:endpoint节点下配置日志拦截器? 具体配置如下
cxf本身就支持日志功能,能打印传入传出的soap报文,但是需要配置一下。?

配置步骤如下:?
我这里配置的是cxf结合spring做的WebService,参考http://ajita.iteye.com/blog/1740754?
1.在spring配置文件中的jaxws:endpoint节点下配置日志拦截器?
具体配置如下:?
Xml代码??

收藏代码

  1. ...??
  2. <import?resource="classpath:META-INF/cxf/cxf.xml"?/>??
  3. import?resource="classpath:META-INF/cxf/cxf-extension-soap.xml"?import?resource="classpath:META-INF/cxf/cxf-servlet.xml"? ??
  4. <!--?配置的cxf?web?service的地址?-->??
  5. jaxws:endpoint?id="searchReq11"?implementor="com.iflytek.server.HelloImpl"??
  6. ????????address="/SearchReqService.asmx">??
  7. ????jaxws:inInterceptors ????????bean?class="org.apache.cxf.interceptor.LoggingInInterceptor"?</jaxws:outInterceptorsbean?class="org.apache.cxf.interceptor.LoggingOutInterceptor"?jaxws:endpoint ...??

2.具体的日志输出目录(3中方式):?
1)什么也不配置,使用java原生的java.util.logging.Logger记录日志。日志文件为Tomcat的logs/catalina.xxxx-xx-xx.log?
2)配置使用slf4j+log4j。cxf默认为使用slf4j记录日志。所以在项目中引入slf4j的jar包即可。如果同时引入log4j则使用log4j记录日志,如果同时引入jcl则使用jcl记录日志。?
3)直接使用log4j记录日志。在项目的类加载路径下创建目录META-INF/cxf/,然后在目录下新建文件“org.apache.cxf.Logger”,在文件中写入:org.apache.cxf.common.logging.Log4jLogger即可。特别要注意,1.上述目录要放在classes目录下;2.要引入log4j的jar包。?
需要注意:上述3种方式优先级从低到高

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读