通过java类包含一个jsp文件

时间:2012-06-11 18:06:01

标签: java jsp jsp-tags jspinclude

我是使用jsp标签的新手。我定义了一个标记,并且在用于生成标记的java类中,我想包含一个jsp文件(内容太长而不能作为java字符串很好地维护)。问题是标签不会被解析,而是在返回浏览器的文件中输出。

我正在尝试做的一个例子:

public class myTag extends TagSupport {

    @Override
    public int doStartTag() throws JspException {
        StringBuffer outString = new StringBuffer( "" );
        outString.append( "<table><tr><td>");

        outString.append("<jsp:include file=\"/widgets/myFile.jsp\" />");
        outString.append( "</td></tr></table>");
        try {
        pageContext.getOut().print( outString );
    } catch( IOException exception ) {
        throw new JspException( "ContactViewerTag: " + exception );
    }

        return EVAL_BODY_INCLUDE;
    }
}

请记住,这是我实际使用的一个非常简化的版本。如果它很简单,我只需从我的主jsp文件中调用include。

有没有办法调用外部jsp文件并通过java类解析?如果没有,有人会对我应该如何做这个有任何建议吗?

1 个答案:

答案 0 :(得分:1)

你可以使用:

PageContext.include

使用你的:

TagSupport.pageContext