【J2EE】Struts2+Tomcat开发环境部署,“Hello World”的实现

1、在官网下载Struts2的开发包

下载链接如下:

http://120.203.229.30/5ff/2bc79/5ff16ae8698e1c321758a8f03a1bc0939892bc79/struts-2.3.16.3-all.zip?n=struts-2.3.16.3-all.zip

http://mirrors.cnnic.cn/apache//struts/documentation/struts-2.3.16.3-docs.zip

http://mirrors.cnnic.cn/apache//struts/source/struts-2.3.16.3-src.zip

Struts2当前最新版本为:

解压struts-2.3.16.3-all.zip得到struts-2.3.16.3,开发包的jar文件都存放在lib文件夹中。

2、加载jar包到工程中的库文件夹部分,使用时候最好都包好红框中的7个jar文件。

如何创建名称为struts2的用户库文件夹,方法如下:

eclipse窗口的菜单栏中选择window--Preferences,选择Java--Build Path,点击下面的User Libraries。然后新建即可。

3、设置工程属性,使得编译时候能够将用户引入的库文件自动拷贝到WEB-INF/lib路径下去编译工程,如果没有此步,会导致编译的时候找不到class的错误。这里当然也可以直接将库文件放到lib中去,但是建议使用前面的方法。

4、新建index.jsp文件,同时拷贝jsp文件必要的库文件servlet-api.jar文件到WEB-INF/lib目录下

代码解释:第12行的value必须等于"mes",因为这里的"mes"是和HelloWorldAction类中定义的私有变量private String mes保持一致的,与方法对应与HelloWorldAction类中的String getMes()方法。

 1 <%@ page language="java" pageEncoding="UTF-8"%>
 2 <%@ page import="java.util.*" %>
 3 <%@ taglib prefix="s" uri="/struts-tags" %>
 4 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 5 <html>
 6 <head>
 7 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 8 <title>welcome Struts2(欢迎页面)</title>
 9 </head>
10 <body>
11     <h2>
12         <s:property value="mes"/>
13         <!-- value is equal to HelloWorldAction.java private mes -->
14     </h2>
15 </body>
16 </html>

5、Run index.jsp在Tomcat服务器上运行,运行后将在eclipse左侧的工程栏自动生成Servers目录。编辑目录下的web.xml文件,添加如下代码:

1   <filter>
2         <filter-name>struts2</filter-name>
3         <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
4     </filter>
5     <filter-mapping>
6         <filter-name>struts2</filter-name>
7         <url-pattern>/*</url-pattern>
8     </filter-mapping>

请注意编写时候,filter节点和filter-mapping节点下的filter-name必须保持一致,均为struts2,且filter-class务必书写准确。

注:该步骤运行index.jsp主要是要自动生成web.xml文件,然后按照要求设置xml文件,以供struts2框架配置

另外特别注意,Apache Tomcat的安装路径不能存在空格,否则会可能会出一些意想不到的错误。

6、编写Action类

Struts2的核心功能是Action类,Action类是一段特定的URL请求时执行的代码,过滤器(FilterDispatcher)会根据请求的URL不同,执行相应的Action类,Action类执行的结果一般对应于一个result展现给用户。result通过字符串名字来标识,过滤器根据Action返回的结果字符串选择对应的result展示给用户,Action与其对应的result在struts.xml文件中进行配置。

  一般Action类会继承com.opensymphony.xwork2.ActionSupport类,并重写此类中的execute()方法。在src目录下创建一个新类HelloWorldAction.java,代码如下:

 1 //javac -classpath "C:\Program Files\Java\jdk1.7.0_60\lib\tools.jar;D:\Java\struts-2.3.16.3-all\struts-2.3.16.3\lib\xwork-core-2.3.16.3.jar" HelloWorldAction.java
 2
 3 package com.struts2;
 4 import com.opensymphony.xwork2.ActionSupport;
 5
 6 public class HelloWorldAction extends ActionSupport{
 7     private String mes;
 8
 9     public String getMes(){
10         return mes;
11     }
12     public void setMes(String _mes){
13         this.mes=_mes;
14     }
15
16     public String execute()throws Exception{
17         mes="Hello World!";
18         return SUCCESS;
19     }
20 }

手动编译生成class文件,编译命令为:
javac -classpath "C:\Program Files\Java\jdk1.7.0_60\lib\tools.jar;D:\Java\struts-2.3.16.3-all\struts-2.3.16.3\lib\xwork-core-2.3.16.3.jar" HelloWorldAction.java

7、配置struts.xml文件(...\WebContent\WEB-INF\classes\路径下)

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd">
 3 <struts>
 4     <include file="stuts-default.xml"></include>
 5     <package name="default" extends="struts-default">
 6         <action name="Hello" class ="com.struts2.HelloWorldAction" method="execute">
 7             <result name="success">/index.jsp</result>
 8         </action>
 9     </package>
10 </struts>

第6行,action节点中的name属性等于"Hello",这里就对应访问action的URL名称:http://localhost:8080/StrutsDemoProject/Hello.action

com.struts2.HelloWorldAction 为HelloWorldAction的class路径

8、拷贝struts2开发包中必要的jar文件到Tocmat安装路径下的lib文件夹中,运行index.jsp程序,这时应该不会在eclipse的Console窗口出现class not found 的错误。(这里需要注意如果在WEB-INF/lib下和tomcat的安装目录的lib下面同时放了struts2的jar文件的时候,这个时候会出现jar文件冲突的错误,另外也可能出现其他意想不到的问题。届时,apache运行失败,问题很难排查。)

C:\apache-tomcat-8.0.9\lib下新增的struts2的jar文件列表如下:

struts2-core-2.3.16.3.jar   ognl-3.0.6.jar  freemarker-2.3.19.jar

commons-logging-1.1.3.jar  javassist-3.11.0.GA.jar

xwork-core-2.3.16.3.jar   commons-lang3-3.1.jar

正常情况下此时运行index.jsp的Console界面是:(这个的错误原因是reques是null,这里是属于正常现象。因为http://localhost:8080/StrutsDemoProject/Hello.action就会正常现实了。)

七月 27, 2014 10:53:38 下午 org.apache.struts2.dispatcher.Dispatcher error
严重: Exception occurred during processing request: null
java.lang.NullPointerException

9、struts2部署后的,运行界面如下

到这里就完成了sturts2的开发环境部署。

【J2EE】Struts2+Tomcat开发环境部署,“Hello World”的实现,布布扣,bubuko.com

时间: 2024-10-17 01:17:42

【J2EE】Struts2+Tomcat开发环境部署,“Hello World”的实现的相关文章

J2ee分布式框架--开发环境部署

摘要:  1.开发工具: Eclipse IDE(建议使用高一点的版本)    2.JDK版本:JDK1.7    3.项目管理: Maven3.1.1 2.安装步骤    1.安装jdk1.7并配置环境变量(相信大家都会做,这里不再做重复的说明)    2.安装maven:maven安装过程就是解压缩的过程(我已经帮大家解压了, 目录:E:\myprj\jeesz-maven\apache-maven-3.1.1),为了方便大家,这边已经提供了相关的安装包,会在打包的目录下共享.    3.m

J2EE分布式框架之开发环境部署(下)

本篇继续为大家讲解J2EE分布式框架的开发环境部署: Eclipse中配置maven安装目录和Setting文件加载的本地库目录 11.导入Maven项目 File>Import>Existing Maven Projects>下一步 选择你本地的maven项目(请选中jeesz-project根目录),点击确定 加载出来所有项目后,点击finish完成 提醒:这个导入的过程要一段时间,因为我本地连接网络,所以会从远程中央库下载项目所需要的所有的jar包,请大家耐心等候. 如果你使用了本

JEESZ分布式框架之开发环境部署(下)

本篇继续为大家讲解J2EE分布式框架的开发环境部署: 10.  Eclipse中配置maven安装目录和Setting文件加载的本地库目录 11.导入Maven项目 File>Import>Existing Maven Projects>下一步 选择你本地的maven项目(请选中jeesz-project根目录),点击确定 加载出来所有项目后,点击finish完成 提醒:这个导入的过程要一段时间,因为我本地连接网络,所以会从远程中央库下载项目所需要的所有的jar包,请大家耐心等候. 如果

Java3D 集成开发环境部署与配置(含实例)

Java 3D开发相关的准备: 第一:下载Java 3D库 参考网址一:https://java3d.java.net/ 参考网址二: http://translate.google.com/translate?hl=zh-CN&rurl=translate.google.com.hk&tl=zh-CN&u=http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-j

Android开发环境部署

由于<深入理解Android 卷一>和<深入理解Android卷二>不再出版,而知识的传播不应该因为纸质媒介的问题而中断,所以我将在OSC博客中全文转发这两本书的全部内容. 第1章 开发环境部署 本章主要内容: 简单介绍本书内容的架构.编译环境的搭建以及如何利用Eclipse调试SystemServer进程. 1.1  系统架构 到目前为止,Android系统的最新版本是4.0.3.而就在本书即将完稿之时,业界有传闻说Android 4.0.4版本已经对大厂商发布.Android系

linux后台服务器开发环境部署配置和验证(nginx+apache+php-fpm+FASTCGI(C/C++))

linux后台服务器开发环境部署配置 引言 背景 随着公司互联网业务的不断增多,开发环境变得越来越复杂,为了便于统一服务器端的开发部署环境,特制定本配置文档. 使用软件 CentOS 6.3(Linux version 2.6.32-279.el6.x86_64) gcc (GCC) 4.4.6 20120305 (Red Hat 4.4.6-4) 本次配置 Nginx 1.5.8 Apache 2.4.7 php 5.3.26 目的 构造WEB前端技术架构,web前端的部署结构技术完全完成.

如何配置Java EE Eclipse+Tomcat 开发环境

如何配置Java EE Eclipse+Tomcat开发环境 本文来源于鸡啄米 http://www.jizhuomi.com/ , 原文地址:http://www.jizhuomi.com/software/357.html 以下将详细介绍在Eclipse下搭建Java EE开发环境的每一步, 环境:Win 7 + JDK 1.7 + Eclipse IDE for Java EE Developers 3.7 +Tomcat 6.0 首先准备好一下软件: JDK:jdk-7u3-window

Ubuntu下android开发环境部署

一.java环境部署 1.jdk下载http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html 2.将下载好的文件拷贝到/opt下 sudo mv <文件名> /opt/ 3.解压文件到当前目录下 sudo tar -zxvf <文件名> 4.打开配置文件 sudo gedit /etc/profile 5.在文件末尾处加上以下信息,保存 export JAVA_HOME=/

【Smobiler企业APP开发之一】开发环境部署

最近研究了下Smobiler-.net移动开发,对于做企业APP开发Smobiler还是够用的,况且是完全使用C#进行编程,对于使用C#进行程序设计的程序员来说还是很容易上手的. 本章节主要介绍Smobiler开发环境部署问题 由于Smobiler是.net移动开发,那么开发工具首选当然是Visual Studio了,Smobiler的最低要求是Visual Studio 2010及以上版本,.net framework 3.5以上,所以需要先确保电脑上已经安装了Visual Studio和.n