配置Struts标记库

在Struts框架中,您始终需要配置Struts标记库才能在视图页面(JSP)中对其进行访问。 有两种配置方法。

1. Strut标签库手动配置

手动配置是一种古老而经典的方法,用于Struts版本<= 1.1和Servlet <2.3容器中。 下载所有Struts依赖项,确保将以下“ tld ”文件复制到WEB-INF文件夹,您可以在下载的Struts库中找到这些文件。

  • struts-bean.tld
  • struts-html.tld
  • struts-logic.tld
  • struts-tiles.tld

在web.xml中声明taglib uri
web.xml

...
<taglib>
     <taglib-uri>
	  http://struts.apache.org/tags-bean
     </taglib-uri>
     <taglib-location>
	  /WEB-INF/struts-bean.tld
     </taglib-location>
</taglib>
<taglib>
     <taglib-uri>
	  http://struts.apache.org/tags-html
     </taglib-uri>
     <taglib-location>
	  /WEB-INF/struts-html.tld
     </taglib-location>
</taglib>
<taglib>
     <taglib-uri>
	  http://struts.apache.org/tags-logic
     </taglib-uri>
     <taglib-location>
	  /WEB-INF/struts-logic.tld
     </taglib-location>
</taglib>
<taglib>
     <taglib-uri>
	  http://struts.apache.org/tags-tiles
     </taglib-uri>
     <taglib-location>
	  /WEB-INF/struts-tiles.tld
     </taglib-location>
</taglib>
<taglib>
     <taglib-uri>
	  http://struts.apache.org/tags-nested
     </taglib-uri>
     <taglib-location>
	  /WEB-INF/struts-nested.tld
     </taglib-location>
</taglib>
...

现在,您可以在JSP页面中访问它。 JSP的@taglib uri必须与web.xml匹配<taglib-uri>






实际上,您可以定义自己的taglib uri名称,例如

web.xml

...
<taglib>
     <taglib-uri>
	  customer-anything/tags-bean
     </taglib-uri>
     <taglib-location>
	  /WEB-INF/struts-bean.tld
     </taglib-location>
</taglib>
...

然后通过您的自定义taglib uri名称访问它。



2. Strut标签库自动配置

这是简单的方法,仅在Struts 1.2、1.3和Servlet 2.3 / 2.4容器中使用。 您不再需要在web.xml中定义“ tlds ”详细信息,只需在项目类路径中包含struts-taglib.jar或将其复制到WEB-INF / lib文件夹即可。

所有“ tld ”详细信息都在“ struts-taglib.jar \ META-INF \ tld ”文件夹中定义。 在部署期间, struts-bean.tldstruts-html.tldstruts-logic.tldstruts-tiles.tld将自动部署。 但是,您只能通过以下“ pre-fixed uri ”名称访问它。 在这种方法中,不允许更改“ taglib uri ”名称。






常问问题

问:好像“ taglib uri”指向Apache网站,客户端无法访问互联网怎么办?
:taglib uri是在“ struts-taglib.jar \ META-INF \ tld ”文件夹中定义的,它只是一个项目uri名称,并不指向Apache网站,即使在没有Internet访问环境的情况下,您仍然可以访问它。

问:手动配置可以在最新的Struts 1.2或1.3中使用吗?
:是的,Struts是向后兼容的,Struts 1.2和1.3仍然支持旧方法。

问:哪种方法最好?
:取决于,自动配置只能在Servlet 2.3 / 2.4容器中使用。 如果可以选择,请转到自动方法,为什么要手动复制tld文件?

参考

翻译自: https://mkyong.com/struts/configure-the-struts-tag-libraries/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值