尽管代码与教程相同,Java Brains struts 2项目仍未运行

时间:2015-07-05 04:39:52

标签: java tomcat struts2

我从Java Brains学习struts 2。我编写了一个简单的Hello world类型的struts 2 Web应用程序。它只显示成功页面或错误页面。我已完成教程中指示的所有内容,但遗憾的是页面未加载。以下是项目资源管理器。

enter image description here

我已编辑过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" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>Struts 2 Web Application</display-name>
    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>

根据教程,上面的web.xml配置将整个请求响应过程移交给struts。我已经配置了struts.xml文件,如下所示。

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

<struts>
    <package name="default" extends="struts-default">
        <action name="getTutorial" class="action.TutorialAction">
            <result name="success">/success.jsp</result>
            <result name="failure">/error.jsp</result>
        </action>
    </package>
</struts>

我写了action.TutorialAction类,如下所示。

package action;

public class TutorialAction {
    public String execute(){
        System.out.println("Hello From execute");
        return "success";
    }
}

在Tomcat 7下运行项目后,网址为#34; http://localhost:8080/Struts2Starter/getTutorial.action&#34;应该加载success.jsp页面。但它显示404错误。

success.jsp页面只是一个.jsp页面。

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
Success Page
</body>
</html>

我无法理解为什么它没有运行。我已经敲了一下头来解决它一个星期,最后它只是没有希望:(请帮帮我,谢谢你。

3 个答案:

答案 0 :(得分:1)

请仔细阅读以下几点:

1)你必须添加struts2的所有jar文件,这些文件很容易在“javatpoint”上使用。

2)只使用getTutorial而不是getTutorial.action运行它,比如“http://localhost:8080/Struts2Starter/getTutorial”,有时它的工作。

希望它能为你效劳。

答案 1 :(得分:0)

同样的问题 - 我下载了struts-2.3.2,它是链接http://archive.apache.org/dist/struts/中提供的struts2中最早的版本,但仍然出现错误404-未找到上述指定的网址,即http://localhost:8080/Struts2Starter/getTutorialhttp://localhost:8080/Struts2Starter/getTutorial.action两者。

答案 2 :(得分:0)

请仔细阅读以下几点:

1)你必须添加struts2的所有jar文件,这些文件很容易在“javatpoint”上使用。

2)只使用getTutorial而不是getTutorial.action运行它,比如“http://localhost:8080/Struts2Starter/getTutorial”,有时它的工作。 您还可以从此处观看Java视频 https://www.youtube.com/channel/UCWJ9QB_Ng-dgEOFd_1Ouobg