用eclipse搭建struts开发环境
学习struts已经两周了,但是一直没有成功搭建出struts开发环境,总是遇到一些问题,百度了一番也没能解决。今天实验课上在同学的帮助下成功搭建了struts开发环境并成功运行了程序,回寝室后又在自己的小本上试验了几番,最终成功掌握了在eclipse下搭建struts开发环境的过程。先将自己的一些心得写出来,和与我由着共同疑惑和错误的同仁们分享。
步骤:
一、新建web工程
File->New->Dynamic Web Project
(此处,如果New菜单中没有Dynamic Web Project,可以点击Other选项,在其中进行查找。)
在随后的对话框中输入工程名称,“确定”完成创建web工程。
二、导入struts所需的jar包
1. 解压struts-2.3.8-all.zip文件
2. 打开解压后生成的struts-2.3.8文件目录下的apps文件夹,复制struts2-blank.war粘贴到tomcat/webapps目录下。
3. 启动tomcat服务器:运行tomcat/lib/startup.bat文件启动tomcat,tomcat启动的过程中,struts2-blank.war将被解压成struts2-blank文件。
4. struts2-blank是一个空白的web工程(读者可以在浏览器中输入http://localhost:8080/struts2-blank执行该工程以查看运行效果),里面有些我们进行struts开发需要用到的一些文件,如web.xml、struts.xml等。
三、导入struts所需的jar包
1.在新建的工程名上 “右键”->Build Path->Configure Build Path->Libraries->Add External JARs....
2.此处需要注意,struts常用的JAR包有11个,如下如所示。这里有两种导入struts JAR包的方式:
①导入tomcat下webapps\struts2-blank\WEB-INF\lib目录下常用的11个包
②导入struts-2.3.8\lib目录下的11个常用JAR包,这种方式相对有些麻烦,需要从一大堆JAR包中找出这11个常用JAR包。
3.点击 OK 成功导入JAR包
四、将所需的jar包复制到WEB-INF/lib目录下
在这里我遇到了最大的困难。
之前我还像Java开发和JSP开发时候一样,导入JAR包后完事。
但是此次不同了,在写好代码运行时,直接报出了
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter这个很经典的错误,说白了,就是找不到JAR包。我在百度上查了半天这个错误出现的原因,也找到一大堆解决方法,最终结果呢:不好使。
同学告诉我:需要把这11个JAR包放到工程文件的WebContent\WEB-INF\lib目录下。我照做了,于是问题才得以解决。
所以此处我也特别提醒大家,别忘了把这11个JAR包拷贝一份到工程文件的WebContent\WEB-INF\lib目录下。
五、编写工程文件
到这里,struts开发环境就算配好了,如果大家在配置过程中遇到其他问题,我们可以一起探讨,发E-mail到1259023512@qq.com即可。
至于源文件的编写就需要在以后的学习中慢慢积累经验了。
现将我写的一个web.xml文件和struts.xml文件的简单样例粘到文章中吧。
、、、、、、、、、、、、、、、、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>inputMessage.jsp</welcome-file>
</welcome-file-list>
</web-app>
。。。。。。。。。。。。。。。。。。。。。。。。。。Struts.xml。。。。。。。。。。。。。。。。。。。。。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="default" namespace="/" extends="struts-default">
<action name="helloWorld" class="example.struts2.HelloWorld">
<result name="success">/showMessage.jsp</result>
<result name="error">/noMessage.jsp</result>
</action>
</package>
</struts>