Liferay中doView()
和render()
函数之间的实际差异是什么?以及renderRequest
和resourceRequest
之间有什么区别?
答案 0 :(得分:7)
doView()
=在处于VIEW模式时处理渲染请求。
render()
=此方法调用doDispath()
方法并使用getTitle()
方法设置portlet的标题。然后它会调用doView()
,doEdit()
,doHelp()
等之一,具体取决于RenderRequest
中指定的portlet模式。
同样,RenderRequest是您希望在Portlet的VIEW模式下处理请求的时候。如果您的portlet使用其他资源来呈现视图(即图像,JavaScript文件等),那么呈现视图的JSP将使用<portlet:resourceURL />
标记来生成这些资源的有效URL。这些网址将使用一对ResourceRequest
和ResourceResponse
个对象进行处理。
您可以覆盖资源阶段,但请记住,当您使用ResourceRequest
/ ResourceResponse
进行服务时,portlet无法更改当前的portlet模式,窗口状态或呈现参数。此外,资源网址上设置的参数也不是渲染参数,它们仅对当前资源请求有效。