在服务器上运行struts2应用程序时的http状态404

时间:2014-01-20 09:55:28

标签: java xml jsp http struts2

这个问题听起来可能重复,但事实是我还没有收到解决方案。我刚刚进入struts2并尝试登录应用程序。我附上了以下库:

commons-fileupload-1.2.2.jar
commons-io-1.4.jar
commons-lang-2.4.jar
commons-logging-1.0.4.jar
freemarker-2.3.15.jar
javassist-3.14.0-GA.jar
ognl-2.6.11.jar
struts2-core-2.0.14.jar
struts2-core-2.1.6.jar
xwork-2.0.7.jar

当我单独运行普通的JSP页面(没有struts标签)时,它运行正常。但每当我单独运行带有struts标记的jsp页面时,它就会显示http error 500。创建完整的web.xml和struts.xml并运行整个应用程序后,它会报告http status 404。我知道问题是我的jsp页面没有得到认可。请帮助。

的web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
   <display-name>Struts2 Application</display-name>

    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>
            org.apache.struts2.dispatcher.FilterDispatcher
        </filter-class>
    </filter>
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <welcome-file-list>
        <welcome-file>Login.jsp</welcome-file>
    </welcome-file-list>
</web-app>

struts.xml中:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
    <constant name="struts.enable.DynamicMethodInvocation"
        value="false" />
    <constant name="struts.devMode" value="false" />
    <constant name="struts.custom.i18n.resources"
        value="ApplicationResources" />

    <package name="default" extends="struts-default" namespace="/">
        <action name="login"
            class="com.vvv.struts.LoginAction">
            <result name="success">Welcome.jsp</result>
            <result name="error">Login.jsp</result>
        </action>
    </package>
</struts>

2 个答案:

答案 0 :(得分:1)

HTTP状态404已解决 - Struts2

要解决此问题,请在lib文件夹中复制以下10个jar文件。

commons-fileupload-1.3.1.jar,
commons-io-2.2.jar,
commons-lang-2.4.jar,
commons-lang3-3.2.jar,
commons-logging-api-1.1.jar,
freemarker-2.3.19.jar,
javassist-3.11.0.GA.jar,
ognl-3.0.6.jar,
struts2-core-2.3.20.1.jar,
xwork-core-2.3.20.1.jar

希望它能运作..谢谢:)

答案 1 :(得分:0)

  

struts2-core-2.0.14.jar
  struts2的核 - 2.1.6.jar

这是错误的,不会使它发挥作用。

确保您拥有:

  • 每个JAR只有一个版本
  • 所有与其他人相同版本的JAR

可能

  • 所有最新版本的JAR。

在此处查看最新版本和非struts库以及相应的版本:http://struts.apache.org/release/2.3.x/struts2-core/dependencies.html

或按照此处所述下载完整的软件包:https://stackoverflow.com/a/21044848/1654265