1、在Tomcat启动时出现以下问题:
log4j:WARN No appenders could be found for logger
log4j:WARN Please initialize the log4j system properly
解决方法如下:
(1)在WEB-INF目录下新建log4j.properties文件,文件内容如下:
# Configure logging for testing: optionally with log file
log4j.rootLogger=WARN, stdout
# log4j.rootLogger=WARN, stdout, logfile
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.logfile.File=target/spring.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n
(2)在web.xml中进行如下配置:
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/log4j.properties</param-value>
</context-param>
······
<!-- 定义LOG4J监听器 --><listener>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
经过这两个步骤以后,问题就解决了,关于这个问题的详细描述,请访问http://www.cnblogs.com/jbelial/archive/2012/06/05/2536814.html。
2、在Tomcat运行web项目时出现以下错误:
expected at least 1 bean which qualifies as autowire candidata for this depeandency
出错原因是:UserService的包名与配置文件中扫描的包名不对应,导致对象无法被自动注入。
解决方法:检查自动注入的对象所在的包是否与扫描包对应。
附录为项目源代码。