我正在尝试重用从Struts1到Struts2的一堆JSP,其中一些JSP具有声明的taglib,如下所示:
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
当我将它们更改为:
<%@ taglib uri="/struts-tags" prefix="html"%>
<%@ taglib uri="/struts-tags" prefix="logic"%>
<%@ taglib uri="/struts-tags" prefix="bean"%>
我收到一个错误:
JSPG0227E:转换/jsp/survey/surveyIdPreview.jsp:/jsp/survey/surveyIdPreview.jsp(27,1)-> JSPG0046E:无法找到标记html的标记文件时捕获到异常
我使用同一taglib三次的原因是因为这些标签散布在JSP上,并且我正在尝试最小化代码更改。
这种方法适用于应用程序的其余部分,但对于某些页面,我会看到上述错误。我无法理解为什么Struts2 jar中的TLD对某些页面不可见。
任何帮助是极大的赞赏。
这3是针对struts 1标签的。
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
Struts 2仅使用单个tld,即struts-tags.tld。因此,您只能将其声明为:
<%@ taglib prefix="s" uri="/struts-tags" %>
还要确保,您在WEB-INF / lib中的struts2-core-2.xxjar
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句