freemarker中使用struts2标签
最近公司采用了struts2框架,替换原有的webwork ,换汤不换药阿。view还是采用freemarker。原先采用的webwork自定义模版不能用了。上网搜索了一下。办法还蛮简单。
1.将系统所需的标签库定义文件(也就是tld文件)复制到web应用中,对于struts2系统,则需要将struts2-core-2.0.6.jar中的struts-tag.tld拷贝到web应用中
2.在web.zml中启动JSPSupportServlet
<servlet>
<servlet-name>JSPSupportServlet</servlet-name>
<servlet-class>org.apache.struts2.views.JspSupportServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-name>JSPSupportServlet</servlet-name>
<servlet-class>org.apache.struts2.views.JspSupportServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
3.在freemarker模板中使用assign指令导入标签库,导入标签库代码如下:
<#assign s=JspTaglibs["/WEB-INF/struts-tags.tld"]>
4.加入标签库定义后就可以使用struts2标签了()
将webwork自定义模版中的<@ww.text>替换成<@s.text>,就可以了。若有不同,上网google