CXF客户端普通java工程使用log4j


做cli命令行去调用webservice,该CXF客户端是一个普通java工程,需要使用log4j打日志。。

CXF默认使用java.util.logging作为默认的日志实现。

参考CXF官方文档:


http://cxf.apache.org/docs/debugging-and-logging.html


Using Log4j Instead of java.util.logging

As noted above, CXF uses the java.util.logging package by default. But it is possible to switch CXF to instead use Log4J . This is achieved through the use of configuration files. There are two options to bootstrapping CXF logging and each is listed below:

  • Add the following system property to the classpath from which CXF is initialized:
-Dorg.apache.cxf.Logger=org.apache.cxf.common.logging.Log4jLogger
  • Add the file META-INF/cxf/org.apache.cxf.Logger to the classpath and make sure it contains the following content:
org.apache.cxf.common.logging.Log4jLogger

Using SLF4J Instead of java.util.logging (since 2.2.8)

As noted above, CXF uses the java.util.logging package by default. But it is possible to switch CXF to instead use SLF4J . This is achieved through the use of configuration files. There are two options to bootstrapping CXF logging and each is listed below:

  • Add the following system property to the classpath from which CXF is initialized:
-Dorg.apache.cxf.Logger=org.apache.cxf.common.logging.Slf4jLogger
  • Add the file META-INF/cxf/org.apache.cxf.Logger to the classpath and make sure it contains the following content:
org.apache.cxf.common.logging.Slf4jLogger

简单描述一下就是:有两种方式实现在cxf中使用日志功能(本文采用的第二种方式)


1、在classpath中新建文件  META-INF/cxf/org.apache.cxf.Logger(此处本人走了不少弯路,刚开始 META-INF/cxf/org.apache.cxf.Logger 和log4j.propertis放 在src目录下,源码编译的class文件放在bin中。后来发现编译后目录中居然没有 org.apache.cxf.Logger文件,干脆直接把bin文件放入classpath中,直接把log4j.properties和META-INF/cxf/org.apache.cxf.Logger 建在这个位置


2、在新建的文件中加上一行

org.apache.cxf.common.logging.Slf4jLogger




3、添加log4j需要的包: log4j.jar, common-logging.jar


4、直接把log4j.properties放在bin目录下

归根结底还是一个classpath的问题,但是刚开始的时候我把log4j.properties和 META-INF/cxf/org.apache.cxf.Logger放在src目录下应该是在classpath中的呀,不明白,请高手指教一下。。

猜你喜欢

转载自paladin1988.iteye.com/blog/1755172
今日推荐