在Eclipse中配置Struts2

下面介绍在Eclipse中配置Struts2的过程:

一、下载Struts2,因为Struts2是开源的,百度或者google一下就可以找到下载地址。我下载的是struts-2.3.1.2版本 的,解压之后入下图:


apps目录:Struts2的范例

docs目录:Struts2的文档

lib目录:Struts2的类库

src目录:关于Struts2的一些资源

二、现在是利用apps中的范例实现一个helloworld的action,在apps目录下有几个war文件,如下图:

这几个文件可以用WinRAR打开,我用好压打开struts2-blank.war之后,如下图

在WEB-INF目录下打开classes目录,找到struts.xml文件,如下图

将struts.xml文件复制到Eclipse新建工程的src目录下,在我的工程中如下图:

三、如上面所示,在WEB-INF目录下打开lib目录,如下图:


 打开之后会有如上图的jar包,为保险起见,将所有的jar包复制到新建工程的lib目录下,在我的工程中如下图:

四、返回到WEB-INF目录下,找到web.xml文件并打开,打开之后会看到有如下代码:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  3. <display-name>Struts Blank</display-name>
  4. <filter>
  5. <filter-name>struts2</filter-name>
  6. <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  7. </filter>
  8. <filter-mapping>
  9. <filter-name>struts2</filter-name>
  10. <url-pattern>/*</url-pattern>
  11. </filter-mapping>
  12. <welcome-file-list>
  13. <welcome-file>index.html</welcome-file>
  14. </welcome-file-list>
  15. </web-app>
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

    <display-name>Struts Blank</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>

    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
    </welcome-file-list>

</web-app>

将其中<filter></filter>和<filter-mapping></filter-mapping>元素复制到Eclipse新建工程的web.xml文件中,我的web.xml文件如下所示:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <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_2_5.xsd" id="WebApp_ID" version="2.5">
  3. <display-name>Structs0317</display-name>
  4. <welcome-file-list>
  5. <welcome-file>index.html</welcome-file>
  6. <welcome-file>index.htm</welcome-file>
  7. <welcome-file>index.jsp</welcome-file>
  8. <welcome-file>default.html</welcome-file>
  9. <welcome-file>default.htm</welcome-file>
  10. <welcome-file>default.jsp</welcome-file>
  11. </welcome-file-list>
  12. <filter>
  13. <filter-name>struts2</filter-name>
  14. <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  15. </filter>
  16. <filter-mapping>
  17. <filter-name>struts2</filter-name>
  18. <url-pattern>/*</url-pattern>
  19. </filter-mapping>
  20. </web-app>
<?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_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>Structs0317</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
   <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>

五、在Eclipse中打开复制来的struts.xml文件,将文件中<struts>和</struts>之间的内容注释掉,并添加如下所示的代码:

  1. <package name="default" namespace="/" extends="struts-default">
  2. <action name="hello">
  3. <result>
  4. /Hello.jsp
  5. </result>
  6. </action>
  7. </package>
<package name="default" namespace="/" extends="struts-default">

        <action name="hello">
            <result>
                /Hello.jsp
            </result>
        </action>
    </package>

六、在Ecplise中新建一个Hello.jsp文件,在<body>标签之间写如下代码:

  1. Hello Struts2<br>
Hello Struts2<br>

然后启动Tomcat服务器,在IE浏览器中输入http://localhost:8080/Structs0317会发现出现如下错误:

  1. There is no Action mapped for namespace [/] and action name [] associated with context path [/Structs0317]. - [unknown location]
  2. at com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:185)
  3. at org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:63)
  4. at org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
  5. at com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
  6. at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:500)
  7. at org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
  8. at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
  9. at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
  10. at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  11. at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
  12. at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
  13. at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
  14. at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
  15. at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
  16. at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
  17. at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
  18. at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
  19. at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
  20. at java.lang.Thread.run(Unknown Source)
There is no Action mapped for namespace [/] and action name [] associated with context path [/Structs0317]. - [unknown location]
	at com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:185)
	at org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:63)
	at org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
	at com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
	at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:500)
	at org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
	at java.lang.Thread.run(Unknown Source)

其实正确的输入是http://localhost:8080/Structs0317/hello或者http://localhost:8080/Structs0317/hello.action  访问到的Hello.jsp如下图所示:

OK,至此所有的配置都配置好了,接下来就可以好好的去玩Struts2了。在这里还想再谈一点感受就是,遇到新的东西首先是先拿去 用,等会用了在好好研究它的原理和细枝末节,就像别人给你一把枪一样,你不会一拿到枪就把它拆开来研究它的内部构造,而是直接拿去用,会用了,觉得这东西 有意思了,再好好去研究的内部结构甚至是仿制出一把出来。这也是我以前所没有意识到的,希望今后改进,好好学习,天天向上。

在Eclipse中配置Struts2

时间: 2024-08-24 04:30:12

在Eclipse中配置Struts2的相关文章

在Eclipse中配置Tomcat7.0

为了在Eclipse中进行struts2的测试,才发现自己机器上的Eclipse没有集成Tomcat,在网上找了半天,不是这个插件没有下载地址,就是那个有好多注意事项或者版本问题.结果,自己到tomcatforEclipse的插件的网上直接下载了一个,按照提供的说明一下子就配成了.网上的那么多配置文章,唉,不说啥了.看看我的配置步骤吧. 1,Eclipse的安装.这个是从Eclipse的官方网站下载的.不用教吧,下载后exe文件执行安装. 2,下载一个tomcat,从apache的官方网站上下载

在Eclipse里面配置Struts2

下面介绍在Eclipse里面配置Struts2 下载Struts2的压缩包 我下载的是2.3.32版本 解压之后如图所示 apps目录:Struts2的范例 docs目录:Struts2的文档 lib目录:Struts2的类库 src目录:关于Struts2的一些资源 在apps目录下面有几个例子 使用jar解压 jar -xvf struts2-blank.war 解压之后得到 在struts-2.3.32\apps\WEB-INF\classes下找到struts.xml文件 在Eclips

Eclipse下配置Struts2

前几天一直把玩Struts2,折腾来折腾去,最后终于配置好了我的第一个Struts2项目之HelloWorld! 心里还有点小激动呢:) 废话少说这就说明配置步骤 1. 新建项目 new > Dynamic Web Project 项目名称命名为Struts2-HelloWorld. 2. 导入jar包 将从官网下载的struts2文档中apps文件夹下的struts2-blank.war解压,然后将其WEB-INF > lib下的所有jar包(好像是13个,这是最基本的jar包)拷贝到Str

eclipse中配置的tomcat 启动正常 但是访问报404错误

问题描述: 在eclipse中配置的Tomcat,启动是正常的,控制台显示启动成功,也没有报任何错误信息,但是访问的时候就报404错误,然后直接在bin目录下启动startup.bat的方式就是正常的.然后就很纳闷,之后在网上搜了下资料,说是Eclipse的配置出了问题. 解决方案: 1.如果Server里的tomcat启动了,需要先停掉.然后再移除添加的项目 2.之后双击server中配置的tomcat服务器,会弹出如下界面. 3.在Server Locations配置中选择第二个选项,use

在Eclipse中配置Tomcat 创建和运行Servlet/JSP

在Eclipse中配置Tomcat 创建和运行Servlet/JSP 步骤一:在Eclipse中配置Tomcat(注意下载Eclipse IDE for Java EE Developers) (1)在Eclipse中配置Tomcat.选择Window→Preferences命令,在打开的对话框左边列表框中选择Server节点中的Runtime Environments.单击窗口右侧的Add按钮,打开New Server Runtime Environmen对话框,在该对话框中可选择服务器的类型

安装Tomcat8,在Eclipse中配置Tomcat8

最近想学一下Java Web,在这里记录下学习过程,也方便以后如果忘了,可以方便查阅. 这篇是关于Tomcat的安装,最新的Tomcat是Tomcat 8.可以从Tomcat官网下载,我使用的是windows版本(我Linux还在学啊). Tomcat是有Java开发的,所以在安装Tomcat前要先安装JDK,Tomcat8只支持JDK1.7和更新的版本.安装JDK很简单,这里不说. Tomcat的Windows版本有两种安装方式,一种是用安装包安装,对于新手来说一直按下一步就可以了,很简单.

如何在eclipse中配置反编译工具JadClipse

Q:为什么有必要在开发环境中配置反编译工具呢? A:  当运行引用了第三方jar包项目时,突然报出了jar包中的某个类的某一行出现异常.我们想看一下这个class文件的代码时,经常出现了如下图所示的场景: god ,我的内心是崩溃的. 去找源码吗?可以,but很浪费时间(除非是maven项目,在pom.xml中引入依赖jar包会连同源文件下载下来). so ,在eclipse中配置反编译工具,就可以随时查看class文件的内容了. 下面就以JadClipse为例,讲述一下配置过程,如有高见,不吝

eclipse中配置spring环境

初识Spring框架 1.简单使用 eclipse中配置Spring环境,如果是初学的话,只需要在eclipse中引入几个jar包就可以用了, 在普通java project项目目录下,建一个lib文件夹,将常用的jar包导入,并Build Path. jar包资源下载:http://pan.baidu.com/s/1pKAP8gj 这样就可以快速进行Spring的简单学习了 2.正常使用 要使用Spring的完整功能还需要下载 Spring Tool Suite 与 完整版的 spring-f

Eclipse中配置Tomcat

Eclipse中配置Tomcat 1.在Eclipse中[New]-[Other] 2.选择[Server]点击[Next] 3.选择需要的Tomact:然后点击[Add] 4.点击[Browse]选择Tomcat路径 5.点击[Installed JREs]选择jdk 6.添加项目 7.启动 Tomca 选择菜单[window]-[Show View]-[Other] 选择创建的Tomact 点击 [Debug]