Java 如何在EclipseGalileo中创建Struts2项目?

Java 如何在EclipseGalileo中创建Struts2项目?,java,eclipse,struts2,Java,Eclipse,Struts2,我想在eclipse中创建一个struts 2项目。我已经下载了最新的struts发行版。但是当我试图在ECLIPSE中创建struts项目时,事情总是变得混乱。 每当我创建一个动态web项目并向该项目添加struts库时,总会弹出一些错误或其他错误 如何正确设置EclipseStruts2项目 为了获得一个简单的Hello world页面,我做了以下操作: 创建动态web项目(procollab) 在WEB-INF/lib中添加了struts 2 JAR 在项目生成路径中添加了相同的库 在WE

我想在eclipse中创建一个struts 2项目。我已经下载了最新的struts发行版。但是当我试图在ECLIPSE中创建struts项目时,事情总是变得混乱。 每当我创建一个动态web项目并向该项目添加struts库时,总会弹出一些错误或其他错误

如何正确设置EclipseStruts2项目

为了获得一个简单的Hello world页面,我做了以下操作:

  • 创建动态web项目(procollab)
  • 在WEB-INF/lib中添加了struts 2 JAR
  • 在项目生成路径中添加了相同的库
  • 在WEB-INF/classes中为src设置输出文件夹
  • 在web.xml中创建了一个筛选器,用于将所有请求发送到org.apache.struts2.dispatcher.FilterDispatcher
  • 在src中创建了struts.xml
  • 我得到的错误:

    Http 404。我为任何URL获取此信息,例如

    我在tomcat服务器列表中也在eclipse中添加了procollab项目。但是当我直接访问任何静态资源时,我得到了页面。我在webcontent文件夹中有helloworld.jsp,当我转到http:localhost:8080/procollab/helloworld.jsp时,我得到了正确的页面

    我是否正确设置了我的环境?请帮忙

    WEB-INF/classes中的my struts.xml文件

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
        "http://struts.apache.org/dtds/struts-2.1.7.dtd">
    
    <struts>
        <package name="default" namespace="/" extends="struts-default">
            <action name="SayHello">
                <result>/hello.jsp</result>
            </action>
    
        </package>
    
    </struts>
    
    
    /hello.jsp
    
    Http 404。我为任何URL获取此信息,例如

    这就是唯一的问题?404只是表示请求的URL上没有资源。找不到页面。就这么简单。您需要自己提供/指定资源,Eclipse不会为您这样做。这是你自己完全控制的代码

    我不确定你希望看到什么,所以我将忽略这一部分。至于404 on,您只需要在
    web.xml
    中定义一个
    ,并确保通过servlet或过滤器映射直接(in)或
    WebContent
    中的物理文件即可使用。就这些

    如果要使
    helloworld.jsp
    成为默认登录页,则需要将以下内容添加到
    web.xml

    <welcome-file-list>
        <welcome-file>/helloworld.jsp</welcome-file>
    </welcome-file-list>
    
    
    /helloworld.jsp
    
    更新:根据发布的struts配置,因此您希望在访问时执行。在这种情况下,您需要如下配置

    <welcome-file-list>
        <welcome-file>/SayHello.action</welcome-file>
    </welcome-file-list>
    
    
    /你好,行动
    
    错误说明了问题的原因。你知道,一旦理解了原因,解决办法就显而易见了。因此,如果你真的很难理解错误,请编辑你的问题以包含实际的错误。是的,我已经列出了我遇到的问题,我所做的步骤步骤3和步骤4是不必要的<默认情况下,代码>/WEB-INF/lib已包含在生成路径中。默认情况下,输出文件夹已经是这种方式。另一个“顺便说一下”:您也可以将
    struts.xml
    放入
    src
    文件夹中。它将自动被纳入
    /WEB-INF/classes
    。不需要到处移动/复制/疯狂;)Eclipse做了所有讨厌的工作。我已经为url模式/*设置了一个过滤器,通过struts filter dispatcher进行过滤。那么呢?struts是否在
    /*
    上准备好了任何东西?显然不是,根据404。我在WEB-INF/classes中创建了一个struts.xml,我在namespace/下有一个包,下面有一个操作,它将显示hello world jsp页面,然后您需要发布更多关于struts配置的详细信息,如果服务器启动日志中有任何不一致的地方,也需要发布。我尝试做的是web.xml->Filter->struts.xml->SayHello.action->hello.jsp