2016-03-18 9 views
2

Ich versuche, eine JSP-Datei mit einer benutzerdefinierten Taglib aufzunehmen. Ich habe alle Taglib-Setup an Ort und Stelle, aber es zeigt die Include-Anweisung anstelle der JSP-Inhalt.Wie eine JSP-Datei mit einer benutzerdefinierten Taglib enthalten?

public int doStartTag() throws JspException { 
    JspWriter out = pageContext.getOut(); 
    StringBuffer sb = new StringBuffer(); 

    if (section != null && !section.isEmpty()) { 
     sb.append("<%@ include file=\"defaultHeader.jsp\" %>"); 
    } 
    try { 
     out.println(sb.toString()); 
    } catch (IOException e) { 
     log.error("Failed to generate the tag", e); 
     e.printStackTrace(); 
    } 
    return super.doStartTag(); 

Ich bin wirklich neu zu Taglibs, so dass jede Hilfe geschätzt wird.

Dank

Antwort

1

Sie könnten ein Attribut mit dem Namen der Datei innerhalb Pagecontext gesetzt und dann erstellen Sie Ihre Richtlinie in dem JSP

So etwas wie diese

pageContext.setAttribute("includeFileName", "YourFile.jsp path", PageContext.REQUEST_SCOPE); 

Ihre JSP gehören:

<%@include file="${pageContext.includeFileName}" %> 

und dann in Ihrer JSP, erhalten Sie dieses Attribut und voula! Es ist nicht wirklich das Loch JSP-Datei in den Schreiber hinzufügen müssen oder

Hoffe, es hilft :)

+0

Danke, ich dachte, es einfach aus. – stillLearning

0

Ich fand heraus, mit der pagecontext schreiben:

pageContext.include(ERROR_BLOCK_FILE_NAME); 
Verwandte Themen