04_配置struts应用
2012-12-13 11:12
260 查看
4.1 Web应用的发布描述文件(web.xml)
Servlet容器支持以下的发布信息:
初始化参数
Session配置
Servlet声明
Servlet映射
应用生命周期的监听类
过滤器定义和映射
MIME类型映射
欢迎文件列表
出错处理页面
JavaEE服务器还需要配置:
标签库映射
JNDI应用
4.1.1 Web应用发布描述文件的文档类型定义(DTD)
4.2为Struts应用配置web.xml文件
4.2.1 配置Struts的ActionServlet
4.2.2 声明ActionServlet的初始化参数
web.xml中的ActionServlet配置代码:
4.2.3 配置欢迎文件清单
对于网页文件,只需要配置web.xml:
对于servlet:
1.struts-config.xml中:
2.welcome.jsp:
3.web.xml:
4.2.4 配置错误处理
对于网页错误:
对于Java异常:
4.2.5 配置Struts标签库
4.3 Struts配置文件
4.3.1 org.apache.struts.config包
<action>和ActionMapping类对应
<forward>和ActionForward类对应
<struts-config>和ModuleConfig类对应
4.3.2 <struts-config>元素
4.3.3 <data-sources>元素
<data-sources>元素用来配置应用所需要的数据源
配置数据源之后,可以在程序代码中访问数据源:
4.3.4 <form-beans>元素
4.3.5 <global-exception>元素
4.3.6 <global-forward>元素
配置:
从demo.jsp转到Action1:
从Action1的execute()方法转到jsp2.jsp:
4.3.7 <action-mappings>元素
4.3.8 <controller>元素
4.3.9 <message-resources>元素
<message-resources>元素用来配置Resource Bundle
struts-config.xml中:
对应的标签使用:
4.3.10 <plug-in>元素
4.3.11 配置多应用模块
把应用分为多个子应用的步骤:
a.为每个子应用创建单独的Sturts配置文件:
例如,struts-config.xml和struts-moduleB.xml
b.在web.xml的ActionServlet的配置代码中添加每个子应用信息:
4.4 Digester组件
Digester组件负责读取并解析XML文件,然后创建并初始化存放XML文件信息的Java对象
4.5 Struts控制面板组件
对大型的应用,可以用Struts Console来维护配置文件,下载地址为:http://www.jamesholmes.com/struts/console/
4.6 重新载入配置文件
出于安全,web容器在运行的时候不会监测web.xml和struts-config.xml的更新并重新加载,
某些struts应用可能需要在不重启web容器的情况下重新加载struts配置文件:
创建Struts Action类,能够重新加载ActionServlet或者用线程监测配置文件的最后修改时间,定期刷新
4.7 小结
Servlet容器支持以下的发布信息:
初始化参数
Session配置
Servlet声明
Servlet映射
应用生命周期的监听类
过滤器定义和映射
MIME类型映射
欢迎文件列表
出错处理页面
JavaEE服务器还需要配置:
标签库映射
JNDI应用
4.1.1 Web应用发布描述文件的文档类型定义(DTD)
4.2为Struts应用配置web.xml文件
4.2.1 配置Struts的ActionServlet
4.2.2 声明ActionServlet的初始化参数
web.xml中的ActionServlet配置代码:
<servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
4.2.3 配置欢迎文件清单
对于网页文件,只需要配置web.xml:
<welcome-file-list> <welcome-file>welcome.jsp</welcome-file> <welcome-file>index.jsp</welcome-file> </welcome-file-list>
对于servlet:
1.struts-config.xml中:
<global-forwards> <forward name="welcome" path="HelloWorld.do"></forward> </global-forwards>
2.welcome.jsp:
<%@ page contentType="text/html;charset=UTF-8"%> <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %> <html> <body> <logic:forward name="welcome"/> </body> </html>
3.web.xml:
<welcome-file-list> <welcome-file>welcome.jsp</welcome-file> </welcome-file-list>
4.2.4 配置错误处理
对于网页错误:
<error-page> <error-code>404</error-code> <location>/common/404.jsp</location> </error-page>
对于Java异常:
<error-page> <exception-type>java.io.IOException</exception-type> <location>/common/system_ioerror.jsp</location> </error-page>
4.2.5 配置Struts标签库
<taglib> <taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri> <taglib-location>/WEB-INF/struts-bean.tld</taglib-location> </taglib>
4.3 Struts配置文件
4.3.1 org.apache.struts.config包
<action>和ActionMapping类对应
<forward>和ActionForward类对应
<struts-config>和ModuleConfig类对应
4.3.2 <struts-config>元素
4.3.3 <data-sources>元素
<data-sources>元素用来配置应用所需要的数据源
配置数据源之后,可以在程序代码中访问数据源:
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception, NoFunctionPermissionException { javax.sql.DataSource dataSource; java.sql.Connection conn; try { dataSource = getDataSource(request); conn = dataSource.getConnection(); } catch (Exception e) { e.printStackTrace(); } return null; }
4.3.4 <form-beans>元素
<form-beans> <form-bean name="loginForm" type="com.uikoo9.LoginForm" /> </form-beans>
4.3.5 <global-exception>元素
<global-exceptions> <exception key="error" type="java.lang.Exception" handler="com.uikoo9.ActionExceptionHandler" /> </global-exceptions>
4.3.6 <global-forward>元素
配置:
<global-forwards> <forward name="forward1" path="/Action1.do" /> <forward name="forward2" path="/jsp2.jsp" /> </global-forwards>
从demo.jsp转到Action1:
<html:link forward="forward1"></html:link>或
<logic:forward name="forward1"/>
从Action1的execute()方法转到jsp2.jsp:
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception, NoFunctionPermissionException { return (mapping.findForward("forward2")); }
4.3.7 <action-mappings>元素
<action-mappings> <action path="/search" type="com.uikoo9.SearchAction" name="searchForm" validate="true" input="/search.jsp"> <forward name="success" path="/display.jsp" /> </action> </action-mappings>
4.3.8 <controller>元素
4.3.9 <message-resources>元素
<message-resources>元素用来配置Resource Bundle
struts-config.xml中:
<message-resources null="false" parameter="defaultResources"/> <message-resources key="images" null="false" parameter="defaultResources"/>
对应的标签使用:
<bean:message key="msgKey"/> <bean:message key="msgKey" bundle="images"/>
4.3.10 <plug-in>元素
<plug-in className="org.apache.struts.validator.ValidatorPlugIn"> <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/> </plug-in>
4.3.11 配置多应用模块
把应用分为多个子应用的步骤:
a.为每个子应用创建单独的Sturts配置文件:
例如,struts-config.xml和struts-moduleB.xml
b.在web.xml的ActionServlet的配置代码中添加每个子应用信息:
<servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param-value> </init-param> <init-param> <param-name>config/moduleB</param-name> <param-value>/WEB-INF/struts-moduleB.xml</param-value> </init-param> </servlet>c.采用<forward>元素或SwitchAction类来实现子应用之间的的切换:
<action-mappings> <action path=""> <forward name="success" contextRelative="true" path="/moduleB/index.do" redirect="true"></forward> </action> </action-mappings>或
<action-mappings> <action path="/toModule" type="org.apache.struts.actions.SwitchAction" /> </action-mappings>
4.4 Digester组件
Digester组件负责读取并解析XML文件,然后创建并初始化存放XML文件信息的Java对象
4.5 Struts控制面板组件
对大型的应用,可以用Struts Console来维护配置文件,下载地址为:http://www.jamesholmes.com/struts/console/
4.6 重新载入配置文件
出于安全,web容器在运行的时候不会监测web.xml和struts-config.xml的更新并重新加载,
某些struts应用可能需要在不重启web容器的情况下重新加载struts配置文件:
创建Struts Action类,能够重新加载ActionServlet或者用线程监测配置文件的最后修改时间,定期刷新
4.7 小结
相关文章推荐
- struts2之Action配置的各项默认值、result配置的各种试图转发类型及为应用指定多个struts配置文件
- Eclipse3.0.1+Myeclipse3.8.2+tomcat5开发第一个struts应用(配置篇
- Struts的安装和配置及其应用
- Struts2+Hibernate3.2+Spring 2.0整合应用配置
- Windows Server 2012 R2 NAP服务器安装与配置04之 NPS应用DHCP相关设置
- Struts+Spring+Hibernate配置及应用
- 为Struts应用配置web.xml文件
- 为应用指定多个struts配置文件
- 5、include为应用指定多个struts配置文件
- struts2之Action配置的各项默认值、result配置的各种试图转发类型及为应用指定多个struts配置文件
- Windows Server 2012 R2 NAP服务器安装与配置04之 NPS应用DHCP相关设置 2014-02-27 21:08:11 标签:nap nap server Windows S
- 配置eclipse 3.4开发struts应用
- 配置Struts应用
- 学习Struts(3)-配置Struts应用
- struts2之Action配置的各项默认值、result配置的各种视图转发类型及为应用指定多个struts配置文件
- jspStruts2时的一些配置问题,以及动态Action应用的坑
- 如何配置基于eclipse的easy structs插件,并介绍了如何结合使用easy structs和eclipes来开发struts的应用
- [Struts]配置第一个Struts 应用
- 配置Struts应用使用多个struts-config.xml文件
- struts2之Action配置的各项默认值、result配置的各种试图转发类型及为应用指定多个struts配置文件