我在我的一个 JSP 页面中导入 liferay 标记库时遇到问题,不知道我做错了什么。我在以前的项目中做了完全相同的事情,但现在由于某种原因它不起作用。
我要导入的代码:
<%@ taglib uri="http://liferay.com/tld.ui" prefix="liferay-ui" %>
我得到的语法错误:
The absolute uri: http://liferay.com/tld.ui cannot be resolved in either web.xml or the jar files deployed with this application
我试图相当广泛地谷歌这个问题,但无济于事。 liferay 可怕的文档(或缺乏文档)也根本没有太大帮助。
在此先感谢您的帮助!
最佳答案
从以下位置(按顺序)解析 taglib URI:
JSTL and JSF Tag Library
库。 Taglib Map in web.xml
,web.xml 可以包含 URI 和 TLD 资源路径的显式映射。 TLDs in JAR files in WEB-INF/lib
和 TLDs under WEB-INF
TLD's supported by Container
在您的情况下,请检查以下情况:
1) 如果与 liferay 相关的 jar 文件存在于 WEB-INF/lib 中,其中
jar/META-INF
将使用 http://liferay.com/tld.ui
URI 定义一个 TLD。2) 如果没有 jar 文件并且
liferay-ui.tld
存在于 jar 文件之外,则在您的 web.xml 中添加 URI 映射条目,如下所示:<taglib>
<taglib-uri>http://liferay.com/tld/ui</taglib-uri>
<taglib-location>/WEB-INF/tld/liferay-ui.tld</taglib-location>
</taglib>
关于java - Liferay Taglib 导入在 JSP 中不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8061648/