struts2.5.20配置的一些坑,HTTP Status 404-Not Found
1.Description The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.但控制台里除了警告信息没其他异常报错,这第一想法就是路径错误了
为了方便阅读经常把项目名称搞成中文,以前写java代码也没遇到坑,这次遇到了,Message部分显示的路径中间有一段编码,显然没有正常解析中文路径,所以把项目名改成全英文就行了;还有常见路径问题应该就是index.jsp放错文件夹,一般是在WebContent下面,不是在Web-INF文件夹下
2.Console报出异常错误:ERROR com.opensymphony.xwork2.util.DomHelper - 文档无效: 找不到语法。 at (null:3:8)
struts.xml 我以为就是个简单的xml所以随手新建了一个,忘了里面有个dtd约束,一般直接创建xml是没有的
所以要在struts.xml头部添加
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd">
3.ERROR StatusLogger Log4j2 could not find a logging implementation. Please add log4j-core to the classpath. Using SimpleLogger to log to the console...报错提示需要添加 log4j-core的jar包
struts2.5.20提供了一个最小包,
我们看到最小包中没有log4j-core-2.11.1.jar这个包,在struts中lib也没发现有。
那么我们可以去下载一个,下载链接http://www.apache.org/dyn/closer.lua/logging/log4j/2.11.1/apache-log4j-2.11.1-bin.zip
点击图中链接进行下载,解压下载的压缩包。
找到log4j-core-2.11.1.jar包,拷贝到项目的lib目录下
---------------------
原文:https://blog.csdn.net/qq_39123517/article/details/88054810
4.一般在WebINF/lib下添加了log4-core的jar包还会报错误
ERROR StatusLogger No Log4j 2 configuration file found. Using default configuration (logging only errors to the console), or user programmatically provided configurations. Set system property 'log4j2.debug' to show Log4j 2 internal initialization logging. See https://logging.apache.org/log4j/2.x/manual/configuration.html for instructions on how to configure Log4j 2
这时需要在classpath中(一般在src下面)添加log4j2.xml文件,2一定不能忘,文件名写错了还是同样错误
下面是log4j2.xml的具体配置:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="[%-5p] %d %c - %m%n" />
</Console>
<File name="File" fileName="dist/my.log">
<PatternLayout pattern="%m%n" />
</File>
</Appenders>
<Loggers>
<Logger name="mh.sample2.Log4jTest2" level="INFO">
<AppenderRef ref="File" />
</Logger>
<Root level="INFO">
<AppenderRef ref="Console" />
</Root>
</Loggers>
</Configuration>
希望能帮到大家,记得点赞哈哈哈哈