Struts2 Struts.xml DTD 说明
转自:http://blog.csdn.net/cuixiuqin1954/article/details/4228741
关于Struts2中的核心配置文件struts.xml,就其DTD(Document Type Definition)文件进行一下说明
<?xml version="1.0" encoding="UTF-8"?> <!-- START SNIPPET: strutsDtd --> <!--
Struts configuration DTD.
Use the following DOCTYPE <!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
--> <!ELEMENT struts (package|include|bean|constant)*> <!-- struts标签下可以出现下面标签0次或多次 package:将多个action组织成一个package的方式。 include:用来包含一个配置文件,目的是为了配置文件能够分离。 bean:被容器的框架创建,并注入到框架内部的对象。主要用来关联第三方类库,比如spring,一般应用程序不需要配置。 contant:用来设置Struts2运行的环境。效果等同于在struts.properties中配置,或者web.xml中配置FilterDispatcher的init param --> <!ELEMENT package (result-types?, interceptors?, default-interceptor-ref?, default-action-ref?, global-results?, global-exception-mappings?, action*)> <!-- package标签下可以出现下面标签0次或者1次 result-types:用来定义结果类型 interceptors:用来定义拦截器 default-interceptor-ref:为package定义默认使用的拦截器,这个package中所有的action(如果这个action没有设置自己使用的拦截器)都会调用设置的默认拦截器 default-action-ref:这个package默认使用的action global-results:为这个package设置共通使用的result,对这个package下的所有action都有效 global-exception-mappings:为这个package定义共通的当发生异常的时候,所用到的result,需与global-results结合使用 package标签下可以出现下面标签0次或者多次 action:为这个package定义action信息。 -->
<!ATTLIST package
name CDATA #REQUIRED
extends CDATA #IMPLIED
namespace CDATA #IMPLIED
abstract CDATA #IMPLIED
externalReferenceResolver NMTOKEN #IMPLIED
> <!-- package标签可以必须出现下面的属性 name:为此package定义一个唯一的标识 package标签可以出现下面的属性(也可不出现) extends:此package所继承的package namespace:此package的命名空间(其下所有的result和action都会在RootContext后加上设置的命名空间),如果不设定,默认为RootContext。 abstract:设置此package为抽象的,抽象的package里不能存在action。此属性的值为true或者false,默认为false externalReferenceResolver:用来整合第三方类库,如spring --> <!ELEMENT result-types (result-type+)> <!-- result-types标签下必须出现result-type标签1次或者多次 result-type:用来定义一个结果类型 --> <!ELEMENT result-type (param*)> <!-- result-type标签下可以出现param标签0次或者多次 用来定义此结果类型需要用到的参数 -->
<!ATTLIST result-type
name CDATA #REQUIRED
class CDATA #REQUIRED
default (true|false) "false"
> <!-- result-type标签必须包含下面属性 name:用来唯一标识这个结果类型 class:此结果类型的java class的位置 default:是否设置为默认的结果类型,默认值为false(不设置为默认的结果类型)。如果设置为默认的结果类型,则如果一个result没有指定type将会默认使用此result type。 --> <!ELEMENT interceptors (interceptor|interceptor-stack)+> <!-- interceptors标签下必须出现下面的标签1次或者多次(两者任一,或者同时) interceptor:用来定义一个拦截器 interceptor-stack:用来定义一个拦截器栈 --> <!ELEMENT interceptor (param*)> <!-- interceptor标签下可以出现param标签0次或者多次 param:用来设置此拦截器需要的参数 -->
<!ATTLIST interceptor
name CDATA #REQUIRED
class CDATA #REQUIRED
> <!-- interceptor必须包含下面属性 name:用来唯一标识此拦截器 class:用来指定此拦截器java class的位置 --> <!ELEMENT interceptor-stack (interceptor-ref+)> <!-- interceptor-stack标签下必须出现interceptor-ref标签1次或多次 interceptor-ref:用来指定此拦截器栈使用的拦截器 -->
<!ATTLIST interceptor-stack
name CDATA #REQUIRED
> <!-- interceptor-stack标签必须包含name属性,用来唯一标识此拦截器栈 --> <!ELEMENT interceptor-ref (param*)> <!-- interceptor-ref标签下可以出现param标签0次或多次,用来设置使用拦截器时所需的参数。 -->
<!ATTLIST interceptor-ref
name CDATA #REQUIRED
> <!-- interceptor-ref标签必须包含name属性,用来指定使用的拦截器名称或者拦截器栈的名称。 --> <!ELEMENT default-interceptor-ref (param*)> <!-- default-interceptor-ref标签下可以出现param标签0次或多次,用来设置使用默认拦截器时所需的参数。 -->
<!ATTLIST default-interceptor-ref
name CDATA #REQUIRED
> <!-- default-interceptor-ref标签必须包含name属性,用来指定默认使用的拦截器名称或者拦截器栈的名称。 --> <!ELEMENT default-action-ref (param*)> <!-- default-action-ref标签下可以出现param标签0次或多次,用来设置使用默认action时所需的参数。 -->
<!ATTLIST default-action-ref
name CDATA #REQUIRED
> <!-- default-action-ref标签必须包含name属性,用来指定默认使用的action名称。 --> <!ELEMENT global-results (result+)> <!-- global-results标签下必须出现result标签1次或者多次,用来设置共通的result --> <!ELEMENT global-exception-mappings (exception-mapping+)> <!-- global-exception-mappings标签下必须出现exception-mapping标签1次或者多次,用来指定共通的,当出现exception时,所参照的result --> <!ELEMENT action (param|result|interceptor-ref|exception-mapping)*> <!-- action标签下可以出现下面标签0次或者多次 param:用来设置调用次action所用到的参数 result:为此action定义结果(可以是一个jsp或者是一个action) interceptor-ref:为此action设置使用的拦截器 exception-mapping:为此action定义,当有异常发生时,所参照的result -->
<!ATTLIST action
name CDATA #REQUIRED
class CDATA #IMPLIED
method CDATA #IMPLIED
converter CDATA #IMPLIED
> <!-- action标签必须包含下面这些属性 name:用来唯一标识此action class:用来指定次action的java class的位置 action标签可以包含下面这些属性 method:为此action指定调用的方法,不指定时默认调用execute方法 converter:为此action指定使用的converter,不指定时使用默认的converter --> <!ELEMENT param (#PCDATA)>
<!ATTLIST param
name CDATA #REQUIRED
> <!-- param标签必须包含name属性 --> <!ELEMENT result (#PCDATA|param)*> <!-- result标签下可以出现param标签0次或者多次 -->
<!ATTLIST result
name CDATA #IMPLIED
type CDATA #IMPLIED
> <!-- result标签可以包含下面属性 name:用来标识此result type:结果的类型 --> <!ELEMENT exception-mapping (#PCDATA|param)*> <!-- exception-mapping标签下可以出现param标签0次或者多次 -->
<!ATTLIST exception-mapping
name CDATA #IMPLIED
exception CDATA #REQUIRED
result CDATA #REQUIRED
> <!-- exception-mapping标签可以包含下面属性 name:用来标识此exception-mapping exception-mapping标签必须包含下面属性 exception:发生的exception的类型 result:当发生exception时所参照的result --> <!ELEMENT include (#PCDATA)>
<!ATTLIST include
file CDATA #REQUIRED
> <!-- include标签必须包含file属性,用来指定所要include的文件的位置。 --> <!ELEMENT bean (#PCDATA)>
<!ATTLIST bean
type CDATA #IMPLIED
name CDATA #IMPLIED
class CDATA #REQUIRED
scope CDATA #IMPLIED
static CDATA #IMPLIED
optional CDATA #IMPLIED
> <!ELEMENT constant (#PCDATA)>
<!ATTLIST constant
name CDATA #REQUIRED
value CDATA #REQUIRED
> <!-- constant标签必须包含下面属性 name:指定constant的key value:指定constant的value --> <!-- END SNIPPET: strutsDtd -->
Struts2 Struts.xml DTD 说明的更多相关文章
- 配置Struts.xml DTD文件报错
报错信息为: The content of element type "struts" must match "((package|include|bean| cons ...
- Struts2 | struts.xml文件中使用method属性和通配符简化action标签和Action处理类的编写
转自:https://www.jianshu.com/p/310e89ee762d 在Struts2框架中,我们知道基本的Action标签只能实现一个url请求对应一个Action处理类.那么我们如果 ...
- struts2 struts.xml配置文件详解
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN&quo ...
- Struts2 struts.xml配置
<?xml version="1.0" encoding="GBK"?> <!--指定 Struts2 的DTD信息 DTD 指 Docume ...
- struts2配置文件struts.xml的简介
本文在于总结,深入研究有别人写的很好了,也没必要再去写,将在本文后面附上他们的文章地址: 一.struts2的执行过程: 二.struts2的配置文件struts.xml 下面是其三大部分includ ...
- struts2——配置struts.xml文件
在struts2框架中struts.xml是应当放到src的根目录,程序编译后会将struts.xml放到WEB-INF/classes目录下. Struts2在web.xml中的一般配置如下: &l ...
- 修改Struts2的struts.xml配置文件位置
默认情况下,Struts2的配置文件名称为struts.xml,且该文件放在src根目录下.如下图所示: 如果需要修改struts.xml的位置,例如把struts.xml放到struts2文件夹下, ...
- 【学习笔记】Struts2之配置文件struts.xml
在默认情况下,Struts2只自动加载类加载路径下的struts.xml.default-struts.xml和struts-plugin.xml三类文件.但是随着应用规模的增大,系统中Action数 ...
- struts2学习笔记--struts.xml配置文件详解
这一节主要讲解struts2里面的struts.xml的常用标签及作用: 解决乱码问题 <constant name="struts.i18n.encoding" value ...
随机推荐
- vim tab 和4个空格
在.vimrc中添加以下代码后,重启vim即可实现按TAB产生4个空格:set ts=4 (注:ts是tabstop的缩写,设TAB宽4个空格)set expandtab 对于已保存的文件,可以使用 ...
- linux vsftpd搭建
1.yum install vsftpd; 2.关闭SELinux的方法:修改/etc/selinux/config文件中的SELINUX="" 为 disabled ,然后重启 ...
- spring mvc实现查询
实体类:User package cn.bdqn.pojo; public class User { private String userName; private String password; ...
- linux 下如何给用户添加权限
linux 添加用户.权限:# useradd –d /usr/sam -m sam此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户 ...
- 通过cmd修改注册表并设置cmd窗口的大小
设置cmd的窗口 mode: modem设置系统设备,主要是lpt1, com1/2, con: 启动时设置窗口大小: cmd /k "mode con: cols=120 lines=40 ...
- Ajax技术详解
Ajax技术:Ajax描述了一种主要使用脚本(JS)操纵HTTP的web应用架构,它的主要特点是使用脚本操纵HTTP和web服务器进行数据交换,不会导致页面重载.Ajax的核心是JS的XMLHttpR ...
- UESTC 1817 Complete Building the Houses
Complete Building the Houses Time Limit: 2000MS Memory Limit: 65535KB 64bit IO Format: %lld & %l ...
- Eighth scrum meeting - 2015/11/2
由于之前的在线视频播放控件功能过于简单,我们今天从网上找了一个效果还不错的视频播放开源项目,在添加了复杂的依赖后终于能够正常使用了,效果比起之前来也好了很多,而且后续的视频下载功能也可以基于这个来开发 ...
- 在docker里面安装部署应用
最近一直在做docker的安装打包工作,学到不少东西,在博客里记一下. 环境centos6 ,docker 基础镜象centos6 1.创建本地基础镜象,安装基础命令包 (1)Dockerfile,D ...
- 淘宝(阿里百川)手机客户端开发日记第六篇 Service详解(三)
主题:Service与Activity交互通信 问题的引出:现在有个需求,如果我们有一个下载任务,下载时间耗时比较长,并且当下载完毕后,需要更新UI的内容,这时,service中的bindServic ...