所以你必须扩展MVCPortlet
课程。这两个调用都用于在处理完成后包含JSP 。doView
如果你看一下这个类的源代码,你就会明白流程是什么,下面是我的解释:
super.doView(renderRequest, renderResponse);
这包括默认的 JSP ie view.jsp
,您可能(或没有)已经配置portlet.xml
如下:
<init-param>
<name>view-template</name>
<value>/html/view.jsp</value>
</init-param>
这个超类方法什么都不做,只是include(viewJSP, renderRequest, renderResponse);
在最后调用该方法。
包括(viewJSP,renderRequest,renderResponse);
此方法包括您为参数指定的任何 JSP 路径viewJSP
。因此,通过此调用,您可以为不同的条件指定包括不同的 JSP,如下所示:
if (isThisTrue) {
include("/html/myCustomPortlet/view.jsp", renderRequest, renderResponse);
} else if (isThisTrueThen) {
include("/html/myCustomPortlet/first/another_view.jsp", renderRequest, renderResponse);
} else {
super.doView(renderRequest, renderResponse);
}
因此,根据您的要求,您可以使用两者中的任何一种或两者的混合,如上所示。希望这可以帮助。