在 Struts 2 升级过程中,我们面临下面提到的问题。
“HTTP 状态 404”错误消息。
我们已经完成了以下步骤来将 struts 从 Struts 2.1.8.1升级到 Struts 2.3.24。
更换了罐子:
- struts2-core-2.3.24.jar
- struts2-dojo-plugin-2.3.24.jar
- struts2-json-plugin-2.3.24.jar
- xwork-core-2.3.24.jar
- ognl-3.0.11.jar
- log4j-1.2-api-2.4.jar
- log4j-api-2.4.jar
- freemarker-2.3.22.jar
- commons-fileupload-1.3.1.jar
- commons-digester-2.1.jar
- commons-io-2.4.jar
添加了罐子:
- asm-3.3.1.jar -asm-tree-3.3.jar
- asm-commons-3.3.jar
- commons-lang3-3.4.jar
- commons-collection-3.2.1.jar
- hamcrest-core-1.3.jar
- javassist-3.11.0.GA.jar
- junit-4.12.jarjunit-4.12.jar
- struts2-convention-plugin-2.3.24.jar
StrutsPrepareAndExecuteFilter
在 web.xml 中用作过滤器。将 DTD 从 struts 2.1 和 2.0 更改为 struts 2.3。
更改了由于 commons-lang3 与 xwork-core 分离而导致错误的导入类。
写
<constant name="struts.additional.excludedPatterns" value="^(action|method):.*"/> <constant name="struts.enable.DynamicMethodInvocation" value="true" />
在 struts.xml 中。
使用 ant build 构建类。并替换我们本地开发中的构建。环境。
启动 Apache Tomcat 服务器(V7.0.54) 。
服务器启动成功,但我们无法打开应用程序;应用程序上下文未启动,网络上产生 404 错误。
如果我们做了一些错误的步骤,您能否指导我们并帮助我们诊断问题?
我们已将 log4j.properties 文件更改为 log4j2.xml,如下所示
<Configuration>
<Appenders>
<RollingFile name="syslog" fileName="/var/log/stor/gui/gui.log">
<PatternLayout>
<pattern>%d %p %m%n</pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="16 MB"/>
</Policies>
<DefaultRolloverStrategy max="1"/>
</RollingFile>
</Appenders>
<Appenders>
<RollingFile name="requestUrilog" fileName="/var/log/stor/gui/requestUrilog.log">
<PatternLayout>
<pattern>%d %p %m%n</pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="8 MB"/>
</Policies>
<DefaultRolloverStrategy max="4"/>
</RollingFile>
</Appenders>
<Appenders>
<RollingFile name="userlog" fileName="/var/log/stor/gui/userlog.log">
<PatternLayout>
<pattern>%d %p %m%n</pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="8 MB"/>
</Policies>
<DefaultRolloverStrategy max="4"/>
</RollingFile>
</Appenders>
<Loggers>
<Logger name="com.sys" additivity="false" level="info">
<AppenderRef ref="syslog"/>
</Logger>
<Logger name="com.requestUri" additivity="false" level="info">
<AppenderRef ref="requestUrilog"/>
</Logger>
<Logger name="com.user" additivity="false" level="info">
<AppenderRef ref="userlog"/>
</Logger>
<Root level="info">
<AppenderRef ref="syslog"/>
</Root>
</Loggers>
</Configuration>
但是我们仍然无法打印日志
现在正在调用我们的操作,但现在命令行命令没有运行。
我们没有得到,用struts运行命令行命令的依赖是什么
请指导我们知道我们做错了什么