以下是我的log4j.properties:
log4j.rootLogger=ALL, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d [%t] %p [%c] - %m%n
log4j.logger.org.springframework=ALL
log4j.logger.app.dev.ems=ALL
log4j.logger.org.springframework.transaction=ALL
我刚才提到的log4jConfigLocation
在web.xml:
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/resources/log4j.properties</param-value>
</context-param>
而且还定义了监听器类:
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
但我无法看到Spring的事务日志中的控制台。 也从一个类: app.dev.ems.web.wicket.page.home.HomePage
当我做:
Logger logger = LoggerFactory.getLogger(getClass());
public HomePage() {
logger.debug("<<<<<<<<<<<<<<<<<<<JYM>>>>>>>>>>>>>>>>>>");//if logger.info is used then it is showing.
}
这也没有显示该日志。 我在检票应用程序,我已经设置:
<init-param>
<param-name>configuration</param-name>
<param-value>DEVELOPMENT</param-value>
</init-param>
虽然定义WicketServlet。
我无法找到问题。 任何信息都对我非常有帮助。
注意:如果你要我张贴的applicationContext.xml我能做到这一点。 日交易注解驱动。
我曾经的log4j-1.2.14,SLF4J-API-1.6.1,SLF4J-log4j12-1.4.2增加。 而且我使用JBoss AS-7.1.0-决赛。
在其他SO线程我看到了,这是与JBoss的问题,并按照给定的有指令我在WEB-INF(也试图与META-INF)加入JBoss的部署,structure.xml:
<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
<deployment>
<exclusions>
<module name="org.apache.log4j" />
</exclusions>
</deployment>
</jboss-deployment-structure>
并确定在applicationContext.xml中的Bean将加载log4j.properties:
<bean id="log4jInitializer" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
<property name="targetClass" value="org.springframework.util.Log4jConfigurer" />
<property name="targetMethod" value="initLogging" />
<property name="arguments">
<list>
<value>classpath:/app/dev/ems/web/log4j.properties</value>
</list>
</property>
</bean>
但遗憾的是它并没有奏效。