Java EE之Struts2-2.5配置

时间:2023-03-08 15:40:01
Java EE之Struts2-2.5配置

开学以来,已经三周了。Java EE却不太走心,于是,这几日空杯心态,重新学习。复习了Java SE和Java Web开发技术,然后入手Struts2。为了使用最新版本的Structs2,我去官网下载了2.5版本的Struts2.,然后,然后,然后,就被坑了。

Java EE之Struts2-2.5配置

一、下载Struts2

  官网:http://struts.apache.org/

  [博主使用的是2.5]

二、创建Java Web Project

  [略]

三、配置web.xml【关键点】

  在/WebRoot/WEB-INF/下新建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" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
<display-name>Struts2</display-name>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
<!-- struts2-2.3及其以下配置↓ -->
<!-- <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> -->
    <!-- 原因是2.5版本中已经不存在ng包了 -->
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
<!-- <url-pattern>*.action</url-pattern> -->
<!-- url:http://314649444.iteye.com/blog/1860338 -->
<!-- Error:HTTP Status 500; The Struts dispatcher cannot be found. This is usually caused by using Struts tags without the associated filter. Struts tags are only usable when the request has passed through its servlet filter, which initializes the Struts dispatcher needed for this tag. - [unknown location] -->
<!-- 如果使用strus2标签,则需要在使用之前当前请求要经过Struts2的核心处理,即Struts2的核心控制类,而我在web.xml中配置Struts2过滤器只配置了<url-pattern>*.action</url-pattern>仅处理了后缀名为action的请求,而直接访问jsp是不会处理的, 顾将此处改成<url-pattern>/*</url-pattern>后问题解决 -->
</filter-mapping>
<servlet>
<servlet-name>loginServlet</servlet-name>
<servlet-class>xhu.edu.servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>loginServlet</servlet-name>
<url-pattern>/loginServlet</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>login2.jsp</welcome-file><!-- STRUTS2 -->
<welcome-file>login.jsp</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>

四、配置struts.xml

  在src下新建struts.xml:

  <?xml version="1.0" encoding="UTF-8"?>
  <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
  <struts>
  <package name="default" extends="struts-default">
  <!-- 用户登录(user login) -->
  <action name="login" class="xhu.edu.action.LoginAction">
  <result name="success">/main2.jsp</result>
  <result name="error">/error.jsp</result>
  </action>
  </package>
  </struts>

五、OK

  Congratulations! 

六、文献:http://314649444.iteye.com/blog/1860338