今天建Struts工程的时候遇到了一个小的麻烦,竟然无法往web.xml文件中添加标签库的配置。一般来说,直接在配置文件中加入:
<taglib>
<taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
就肯定可以了的,但是我这边始终报错,百思不得其解。
后来在网上搜索才发现,原来web-app_2.4描述中使用的XSD和web-app_2.3描述中使用的DTD定义的标签是不一样的,直接加入taglib标签的方法只适合于2.3的版本。
而在2.4中,新增了一个<jsp-config>标签。<jsp-config>标签包括<taglib> 和<jsp-property-group> 两个子元素,其中<taglib>元素在JSP 1.2时就已经存在;而<jsp-property-group>是JSP 2.0 新增的元素。
所以要在2.4中加入taglib的话,必须按照以下格式:
<jsp-config>
<taglib>
<taglib-uri>/WEB-INF/validator-user.tld</taglib-uri>
<taglib-location>/WEB-INF/validator-user.tld</taglib-location>
</taglib>
<jsp-property-group>
<description>Special property group for JSP Configuration JSP example.</description>
<display-name>JSPConfiguration</display-name>
<url-pattern>/*.jsp</url-pattern>
<el-ignored>false</el-ignored>
<scripting-invalid>false</scripting-invalid>
<page-encoding>UTF-8</page-encoding>
<include-prelude>/include/prelude.jspf</include-prelude>
<include-coda>/include/coda.jspf</include-coda>
</jsp-property-group>
</jsp-config>
其中<jsp-property-group>并不是必选的。
<jsp-property-group>的具体用法如下:
1.<description>:设定的说明;
2.<display-name>:设定名称;
3.<url-pattern>:设定值所影响的范围,如:/*.jsp;
4.<el-ignored>:若为true,表示不支持EL 语法;
5.<scripting-invalid>:若为true,表示不支持<% scripting %>语法;
6.<page-encoding>:设定JSP 网页的编码;
7.<include-prelude>:设置JSP 网页的抬头,扩展名为.jspf;
8.<include-coda>:设置JSP 网页的结尾,扩展名为.jspf。
使用标签的好处一是可以省掉为所有的jsp设置字符编码的麻烦,二是还可以在jspf中指定要导入的标签库,这样可以使得开发人员更加注重内容的编写,而不用在这些小地方耽误时间。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。