`
剑&箫
  • 浏览: 54561 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

Eclipse中配置Struts2并实现HelloWorld

阅读更多

刚刚把玩了Struts2,是第一次接触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文件并打开,打开之后会看到有如下代码:

<?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文件如下所示:

<?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>之间的内容注释掉,并添加如下所示的代码:

<package name="default" namespace="/" extends="struts-default">

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

 

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

     

Hello Struts2<br>

 

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

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

 

  • 大小: 31.7 KB
  • 大小: 14.8 KB
  • 大小: 9.8 KB
  • 大小: 12.5 KB
  • 大小: 11.5 KB
  • 大小: 30.6 KB
  • 大小: 7 KB
  • 大小: 2.2 KB
4
1
分享到:
评论
2 楼 huyuancai1010 2013-11-29  
 
1 楼 zl544434558 2013-08-19  
领教了。很久没用struts了,记得不是很清楚了

相关推荐

    Struts2 HelloWorld

    在Struts2中,HelloWorld程序是初学者入门的典型示例,通过这个例子,我们可以了解Struts2的基础架构和核心概念。 1. **MVC模式** MVC模式是软件设计中的一个重要模式,它将业务逻辑、数据和用户界面分离,使得...

    eclipse 配置struts2

    通过以上步骤,我们就在Eclipse中成功配置了Struts2框架,可以开始基于Struts2进行Java Web应用的开发了。记得在开发过程中,利用IDE的错误提示和日志信息来定位和解决问题,同时也可以借助Struts2的官方文档和社区...

    struts2的helloworld例子

    在Eclipse中创建动态Web项目,导入相关库,将`struts2-helloworld`目录结构配置到项目的Web内容目录下,最后将项目部署到Tomcat服务器上。 这个HelloWorld例子展示了Struts2的基本工作流程:用户发送请求,Struts2...

    HelloWorld 基于struts2框架

    在这个案例中,我们聚焦于基于Struts2框架的“HelloWorld”应用。Struts2是一款强大的MVC(Model-View-Controller)框架,广泛应用于Java Web开发,为开发者提供了灵活的控制层结构。 首先,我们需要了解Struts2的...

    eclipse+Struts 2.3.4.1的HelloWorld

    2. 在浏览器中访问`http://localhost:8080/Struts2HelloWorld/hello.action`(根据您的服务器配置可能有所不同)。 此时,你应该能看到"Hello World - Struts 2"的标题,这标志着你已经成功地在Eclipse中使用Struts...

    在Eclipse中配置struts2

    在Eclipse中配置Struts2是一项基础且重要的工作,它涉及到Java Web开发中的MVC框架应用。Struts2是Apache软件基金会的一个开源项目,提供了一种用于构建企业级Web应用程序的强大的MVC框架。以下将详细介绍如何在...

    Struts2之Hello World | #struts2

    2. **创建Maven项目**:如果你选择Maven,使用IDE(如IntelliJ IDEA或Eclipse)创建一个新的Maven Web项目,并配置相关的web.xml文件。这里我们不讨论Ant的创建过程,因为Maven更常见且管理依赖更方便。 3. **配置...

    Struts2 实例 HelloWorld

    在本章中,我们将深入理解如何通过一个简单的HelloWorld实例来启动和运行Struts2应用,同时了解其核心组件和配置过程。 首先,HelloWorld实例是初学者学习新框架时常见的入门教程。在本例中,它的目标是帮助读者对...

    Ajax实现helloworld!实例,eclipse+struts+Ajax初学者必看

    初学者可以通过阅读和理解这些代码来学习Ajax在Eclipse和Struts2中的实际应用。 总的来说,这个“Ajax实现helloworld!实例”是学习Web开发中Ajax、Eclipse和Struts2集成的一个基础教程。通过这个实例,初学者可以...

    Struts2--HelloWorld

    上述配置表明,当访问`/hello`时,Struts2会调用`HelloWorldAction`的`execute`方法,并将结果重定向到`/HelloWorld.jsp`页面。 5. **创建视图**:在WebContent目录下创建`HelloWorld.jsp`,这是一个简单的JSP页面...

    struts2 HelloWorld

    总的来说,"Struts2 HelloWorld"示例涵盖了Struts2框架的基本使用,包括Action的编写、配置文件的设置、视图的渲染以及使用OGNL进行数据传递。通过学习这个示例,开发者可以快速上手Struts2,为进一步探索更复杂的...

    ECLIPSE+STRUTS开发

    本文将详细介绍如何在Eclipse中配置并使用Struts2进行开发。 #### 二、运行环境搭建 在Eclipse中配置Struts2,首先需要搭建以下运行环境: 1. **JDK6安装**:这是Java开发的基础,确保系统中已安装JDK6,且环境...

    Eclipse创建最简单的struts2项目

    本教程将详细介绍如何在Eclipse集成开发环境中创建一个最简单的Struts2项目。 首先,我们需要确保Eclipse环境已经安装了必要的插件,如Dynamic Web Project支持和Tomcat服务器。对于Tomcat,你需要下载对应版本...

    eclipse下开发Struts程序的配置与实例

    下面我们将深入探讨如何在Eclipse中配置Struts并进行实例开发。 首先,我们需要了解Eclipse中开发Struts程序的基础配置步骤: 1. **安装插件**:为了在Eclipse中更好地支持Struts开发,你需要安装Struts2的插件,...

    struts2小例子(eclipse)

    通过这个简单的Struts2 HelloWorld例子,你可以理解Struts2如何处理请求,以及ActionContext如何在请求处理过程中发挥作用。这只是一个基础,Struts2还有更多高级特性,如拦截器、结果类型、OGNL表达式、国际化等,...

    struts1.3.10 helloworld 例子 jdk1.6+Tomcat6.0+eclipse3.5

    本示例是"struts1.3.10 helloworld 例子",旨在帮助开发者了解如何在Java环境中集成Struts 1.3.10框架,使用JDK 1.6、Tomcat 6.0服务器以及Eclipse 3.5 IDE进行开发。下面将详细介绍这个例子的关键知识点。 1. **...

    struts入门样例helloworld

    "Struts入门样例HelloWorld"是一个经典的初学者教程,它帮助开发者了解如何在实际项目中使用Struts框架来实现简单的控制层逻辑。下面将详细解释这个入门示例中的关键知识点。 1. **MVC模式**: Struts遵循Model-...

    Eclipse Struts基本配置步骤

    4. ognl-2.6.11.jar - Object-Graph Navigation Language,Struts2中的表达式语言,用于访问和操作对象属性。 5. commons-io-1.3.2.jar - Apache Commons IO库,提供文件I/O操作的支持。 6. commons-logging-1.1.1....

Global site tag (gtag.js) - Google Analytics