2012-12-21 10 views
5

Quando ho sviluppato il mio portlet e quando ho scritto la mia pagina jsp ho usato:Errore nel mio taglib <% @ taglib prefix = "portlet" uri = "http://java.sun.com/portlet_2_0"%>

ma eclissi mi mostra un errore che mi dice che è non riesce a trovare il tag lib descrittore per http://java.sun.com/portlet_2_0.

Come posso risolvere questo problema senza usare i file tld?

+0

Perché non vuoi avere il file tld richiesto sul tuo progetto? Il tuo progetto funziona se si distribuisce il portlet? –

+0

Voglio solo usare le specifiche del portlet 2.0 senza bisogno del file tld di liferay, non l'ho ancora distribuito – waelbk

+0

Dov'è il .tld per quell'URI? – nitind

risposta

0

È possibile scaricare portlet-2.0.jar e aggiungerlo al percorso del progetto. Ma se ti stai sviluppando per Liferay ti consiglio di usare lo liferay-portlet.tld che ha le specifiche del portlet 2.0.

4

Nel mio caso, io sto usando Liferay Portal, in modo al fine di evitare questo errore ho cambiato:

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


a

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


e nel file "WEB-INF/liferay-plugin-package.properties"; Ho aggiunto questa linea

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

che è suggerito da uno staff Liferay (Link)

2

Se si aggiunge questo al web.xml nella cartella WEB-INF rimuoverà il messaggio di errore 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> 

Spero che sia d'aiuto.

0

Questo errore indica semplicemente che Eclipse non è in grado di trovare un descrittore di libreria di tag (TLD) che risolva l'URI di tag specificato (http://java.sun.com/portlet_2_0). È possibile scaricare il TLD corrispondente al contenitore del portale (Gatein, Pluto, Liferay, ecc.) Da GitHub e inserirlo nella cartella WEB-INF. Il gatein specifico tld può essere trovato here. Inoltre, assicurarsi di avere il jar portlet_2.0 nel percorso del progetto.

1

rimuovere la linea

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

e incollare questa linea:

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

Poi, nella cartella WEB-INF/tld mettere questi file: aui.tld, liferay-portlet.tld, liferay-portlet-ext.tld, liferay-security.tld, liferay-theme.tld, liferay-ui.tld, liferay-util.tld.

Problemi correlati