一尘不染

如何避免在Java自定义标签处理程序中生成HTML?

jsp

我可以找到的每个示例都具有标记处理程序java类,该类生成html并将其喷出 out.print(someHTML);

有没有办法包括一个jsp并向请求中添加属性呢?


阅读 187

收藏
2020-06-08

共1个答案

一尘不染

我没有尝试过,但是应该可以通过从Request对象获得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方法,但它似乎仅适用于静态文件,不适用于jsps。

2020-06-08