2011-07-14 38 views

回答

1

我還沒有試過,但它應該從Request對象可以通過obtaining a RequestDispatcher

public int doStartTag() throws JspException { 
    try { 
     pageContext.setAttribute("title", "My Title"); 
     pageContext.getRequest().getRequestDispatcher("/WEB-INF/includes/header.jspf").include(pageContext.getRequest(), pageContext.getResponse()); 
    } 
    catch (IOException e) { 

    } 
    return EVAL_BODY_INCLUDE; 
} 

PageContext中也有一個include方法,但似乎只對靜態文件,而不是JSP的工作。

+0

謝謝,我會試一試 – blank

+0

只是在pageContext上設置屬性的更新不起作用,您需要在請求範圍內執行此操作,並且在使用請求之前有必要執行.flush()調度員或輸出不包含在他正確的地方。介意我是否更新你的答案? – blank

+0

@BedwyrHumphreys:繼續,這就是Stack Overflow的精神。 –

1

嘗試一個JSP自定義標籤文件;這是一個使用屬性的簡單示例。

標記文件必須生活在WEB-INF /標籤,所以在WEB-INF /標籤/ makebold.tag:

<%@ attribute name="toBold" required="true" %> 

<b>${toBold}</b> 

在boldtest.jsp:

<%@ taglib prefix="my" tagdir="/WEB-INF/tags" %> 

<my:makebold toBold="this will be bolded" /> 

我讀了在標籤文件herehere上。

相關問題