【发布时间】:2022-01-18 02:00:00
【问题描述】:
我们正在尝试使用 log4j2(从 log4j1 移动)但有一个可能与类路径有关的问题,但我无法在多次尝试后修复它
我们正在使用一个单独的模块 (NbfgLogging),它使用 java 类来配置 LOG4J。 配置工作没有问题,但由于某种原因,它禁用了@webservice 扫描的扫描。 查看 WAS 的控制台,服务不再注册 COMMONS-LOGGING.PROPERTIES
priority=1
org.apache.commons.logging.LogFactory=org.apache.commons.logging.impl.LogFactoryImpl
#org.apache.commons.logging.Log=org.apache.logging.log4j.Logger
org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger
#org.apache.commons.logging.Log=java.util.logging.Logger
独立模块文件 (NbfgLogging) 中的依赖项
<dependencies>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-jcl</artifactId>
<version>${log4j.version}</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>${log4j.version}</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>${log4j.version}</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>${log4j.version}</version>
</dependency>
<dependency>
<groupId>org.owasp.encoder</groupId>
<artifactId>encoder</artifactId>
<version>1.2.3</version>
</dependency>
</dependencies>
WAR 文件中的依赖项(产生问题。不扫描@webservices)
<dependency>
<groupId>com.nbfg.fw.foundation</groupId>
<artifactId>NbfgLogging</artifactId>
<version>3.0.0-SNAPSHOT</version>
</dependency>
服务器日志(其他行
[12/14/21 13:13:50:512 EST] 00000177 AbstractInjec W CWNEN0070W:无法识别 javax.ws.rs.HeaderParam 注释类,因为它是从文件:/C:/blp 加载的/IBM/WebSphere/wp_profile/installedApps/porttail-devCell/PA_Xxxxx.ear/CP-3.4.4-SNAPSHOT.war/WEB-INF/lib/javax.ws.rs-api-2.0.1.jar 位置而不是来自产品类加载器。 [12/14/21 13:13:50:513 EST] 00000177 AbstractInjec W CWNEN0070W:将无法识别 javax.annotation.Resource 注释类,因为它是从文件加载的:/C:/blp/IBM/WebSphere/ wp_profile/installedApps/porttail-devCell/PA_Xxxxxx.ear/CP-3.4.4-SNAPSHOT.war/WEB-INF/lib/javax.annotation-api-1.2.jar 位置,而不是来自产品类加载器。
我尝试了以下解决@webservice 扫描问题的方法。但是 looger 不再工作了。 我已经尝试了其他排除...没有任何成功。
战争文件中的依赖关系(排除)
<dependency>
<groupId>com.nbfg.fw.foundation</groupId>
<artifactId>NbfgLogging</artifactId>
<version>3.0.0-SNAPSHOT</version>
<exclusions>
<groupId>*</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
服务器日志(不包括其他行)
原因:org.apache.commons.logging.LogConfigurationException:用户指定的日志类 'org.apache.commons.logging.impl.Log4JLogger' 找不到或不可用。
【问题讨论】:
标签: java maven logging log4j2 websphere-8