解决action类中使用system.out.println()方法时,控制台没有输出问题。
Struts2 ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging
Struts2错误StatusLogger没有发现log4j2配置文件。使用默认配置:日志记录
解决办法:
参考官方给的示例:C:\Users\lzhpc\Desktop\Struts2.5.5\struts-2.5.5-all\struts-2.5.5\apps\struts2-rest-showcase\WEB-INF\src\java
在项目的"src"(官方示例是在java包下)下,新建一个log4j2.xml,内容如下:
-
<?xml version=
"1.0" encoding=
"UTF-8"?>
-
<Configuration>
-
<Appenders>
-
<Console name=
"STDOUT" target=
"SYSTEM_OUT">
-
<PatternLayout pattern=
"%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
-
</Console>
-
</Appenders>
-
<Loggers>
-
<Logger name=
"com.opensymphony.xwork2" level=
"info"/>
-
<Logger name=
"org.apache.struts2" level=
"info"/>
-
<Logger name=
"org.demo.rest" level=
"debug"/>
-
<Root level=
"warn">
-
<AppenderRef ref=
"STDOUT"/>
-
</Root>
-
</Loggers>
-
</Configuration>
从网上搜索别人的代码如下:
-
<?xml version=
"1.0" encoding=
"UTF-8"?>
-
<Configuration>
-
<Appenders>
-
<Console name=
"STDOUT" target=
"SYSTEM_OUT">
-
<PatternLayout pattern=
"%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
-
</Console>
-
<RollingFile name=
"RollingFile" fileName=
"logs/strutslog1.log"
-
filePattern=
"logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
-
<PatternLayout>
-
<Pattern>%d{MM-dd-yyyy} %p %c{
1.} [%t] -%M-%L- %m%n</Pattern>
-
</PatternLayout>
-
<Policies>
-
<TimeBasedTriggeringPolicy />
-
<SizeBasedTriggeringPolicy size=
"1 KB"/>
-
</Policies>
-
<DefaultRolloverStrategy fileIndex=
"max" max=
"2"/>
-
</RollingFile>
-
</Appenders>
-
<Loggers>
-
<Logger name=
"com.opensymphony.xwork2" level=
"WAN"/>
-
<Logger name=
"org.apache.struts2" level=
"WAN"/>
-
<Root level=
"warn">
-
<AppenderRef ref=
"STDOUT"/>
-
</Root>
-
</Loggers>
-
-
-
</Configuration>
这样配置后,启动时就不会在出现异常了。