您的位置:首页 > 编程语言 > Java开发

第一个struts2项目

2015-12-07 16:00 399 查看

实验软件下载

1. 下载struts ,http://struts.apache.org/download.cgi#struts217 (选择下载full distribution)

2. 下载myeclipse,http://www.myeclipseide.com

3. 下载tomcat,http://tomcat.apache.org

4. 下载xwork,http://www.opensymphony.com/xwork(现在与struts对应版本的wwork)

安装与设置

1. 解压struts2.1.6

2. 安装jdk部署jdk环境,tomcat,测试jdk以及tomcat安装是否成功

3. 安装MyEclipse

HelloWorld

1. 建立项目

a) 打开eclipse

b) 新建项目

c) 选择myeclipse-Java Enterprise Projects-Web Project

d) 项目名称:struts2_1207

e) 选择java ee 5.0

2. 设定server

a) window – preferences –myeclipse – servers – tomcat – 7.x

b) 选择tomcat homedirectory(tomcat的安装路径)

c) 选择enable

d) finish

3. 设定jdk环境

a) window – preferences – java –installed jres

b) 如果没有对应的JDK(不是JRE),选择add

c) 选择standard VM-> next

d) 选择JDK对应的Directory

e) 将刚刚设定的JDK设为默认

4. 建立第一个struts2的项目

a) 找到struts目录下对应的apps目录

b) 解压struts2-blank-2.1.6.war

c) Copy对应的lib的jar文件到struts2_1207的lib下,需要除junit和spring-test之外的所有文件,其中commons-io的jar包会在文件上传和下载时需要,其他为必须

d) Copy对应的struts.xml到struts2_1207的src目录,在package explorer视图进行操作

e) 注释掉struts.xml的多余内容

f) 建立HelloStruts2_1.jsp文件

g) *修改jsp文件的默认编码属性window-preferences-web-jspfiles-设为Chinese,National Standard

h) 在struts.xml中照原配置进行对应的配置

i) 修改对应的web.xml,建立struts2的filter(参考struts自带的项目)

5. 运行项目

a) 可以首先部署到tomcat上项目

b) 也可以项目右键debug as– myeclipse server app,选择刚刚建立好的server

常见问题:

1. struts.xml不自动提示

a) window – preferences – 搜索 catalog – add

b) 选择key type为URI

c) key: http://struts.apache.org/dtds/struts-2.0.dtd
d) location: 对应的dtd文件,位于struts-core包中,解压开,指定相应位置,如:D:\share\0750_Struts2.1.6\soft\struts-2.1.6\lib\struts2-core-2.1.6\struts-2.0.dtd

2. 导入示例项目

a) 注意JDK的版本,应该是JDK6,否则会出class version的问题

b) 如果总是项目出问题,可以重建项目,单独拷文件

c) 还有一种情况是项目右键,properties– java – compiler 选择6.0

d) 另外,在tomcat配置中也要使用jdk6

3. devMode设为true就会出问题空指针问题

a) tomcat路径带了空格

4. 在使用ActionContext.getContext().get(“request”)取不到对象,为null值

a) web.xml不要使用2.0的filter,用新的

5. 在action的试验中,遇到一个奇怪的bug

a) 用default-action-ref指定一个action

b) 用*_*映射

c) 在地址栏中访问一个不存在的action,如adfsdfsfs

d) 结果居然会映射到*_*上

e) 如果换成*__*就没问题了

f) 靠,只能认为是bug

g) 下次用*-*,不用*_*

马士兵老师的视屏讲的真真好,膜拜当中。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: