我的taglib错误<%@ taglib prefix =“portlet”uri =“http://java.sun.com/portlet_2_0”%>

时间:2012-12-21 14:19:54

标签: eclipse portlet taglib

当我开发我的portlet时,当我编写我的jsp页面时,我使用了:

<%@ taglib prefix="portlet" uri="http://java.sun.com/portlet_2_0"%>

但是eclipse向我显示错误,告诉我无法找到http://java.sun.com/portlet_2_0的标记库描述符。

如何使用tld文件解决此问题?

5 个答案:

答案 0 :(得分:5)

在我的情况下,我正在使用Liferay Portal,所以为了避免这个错误 我改变了:

<%@ taglib uri="http://java.sun.com/portlet_2_0"% prefix="portlet">


<%@ taglib uri="/WEB-INF/tld/liferay-portlet.tld" prefix="portlet" %>


并在文件“WEB-INF / liferay-plugin-package.properties”;我添加了这一行

portal-dependency-tlds=/WEB-INF/tld/liferay-portlet.tld

由Liferay工作人员(Link

建议

答案 1 :(得分:2)

删除行

<%@ taglib uri="http://java.sun.com/portlet_2_0"% prefix="portlet">

并粘贴此行:

<%@taglib uri="http://java.sun.com/portlet" prefix="portlet"%>

然后,在WEB-INF/tld文件夹中放置以下文件:aui.tldliferay-portlet.tldliferay-portlet-ext.tldliferay-security.tldliferay-theme.tld,{{1} },liferay-ui.tld

答案 2 :(得分:1)

您可以下载portlet-2.0.jar并将其添加到项目路径中。但如果您正在为Liferay开发,我建议您使用具有portlet 2.0规范的liferay-portlet.tld

答案 3 :(得分:1)

如果将其添加到WEB-INF文件夹中的web.xml,它将删除Eclipse错误消息。

<web-app>
    <taglib>
        <taglib-uri>http://java.sun.com/portlet_2_0</taglib-uri>
        <taglib-location>/WEB-INF/tld/liferay-portlet.tld</taglib-location>
    </taglib>
</web-app>

希望它有所帮助。

答案 4 :(得分:1)

此错误仅表示Eclipse无法找到解析给定(http://java.sun.com/portlet_2_0)标记URI的标记库描述符(TLD)。您可以从GitHub下载与门户容器(Gatein,Pluto,Liferay等)相对应的TLD,并将其放在WEB-INF文件夹中。可以找到Gatein特定tld here。 另外,请确保项目路径中包含portlet_2.0 jar。