Java 从portlet中的doView方法重定向

Java 从portlet中的doView方法重定向,java,websphere,redirect,portlet,Java,Websphere,Redirect,Portlet,我正在使用WebSpherePortal6.0,我想知道是否有一种方法可以告诉服务器从doView方法呈现哪个页面。我知道我可以通过processAction方法来实现,但不幸的是,问题的语义不允许这样做 感谢您的帮助我怀疑是否可以在doView()中发送重定向。原因有二: 出于性能和各种其他原因,门户可能会在生成并发送了门户HTTP响应的头之后调用doView(),因此,发出重定向已经太迟了 能够做到这一点可能非常“邪恶”——门户可以随时调用portlet的doView(),而无需用户与该p

我正在使用WebSpherePortal6.0,我想知道是否有一种方法可以告诉服务器从doView方法呈现哪个页面。我知道我可以通过processAction方法来实现,但不幸的是,问题的语义不允许这样做


感谢您的帮助

我怀疑是否可以在doView()中发送重定向。原因有二:

  • 出于性能和各种其他原因,门户可能会在生成并发送了门户HTTP响应的头之后调用doView(),因此,发出重定向已经太迟了
  • 能够做到这一点可能非常“邪恶”——门户可以随时调用portlet的doView(),而无需用户与该portlet交互。因此,portlet可以在随机页面刷新或与另一个portlet交互后执行重定向

通常,我会说,如果portlet需要在doView中执行重定向,那么它可能需要重新设计。也许可以尝试更详细地描述您的问题。

据我所知,您需要决定将向用户显示哪个JSP/HTML页面

在这种情况下,这就是你需要做的

public void doView(RenderRequest req, RenderResponse res) throws IOException,
PortletException {

    PortletRequestDispatcher prd =
        getPortletContext().getRequestDispatcher("/WEB-INF/jsp/view.jsp");
    prd.include(req, res);
}
您可以决定每次要为哪个jsp获取请求调度程序