【问题标题】:What is the difference between doView() and render() functions in Liferay?Liferay 中的 doView() 和 render() 函数有什么区别?
【发布时间】:2012-07-18 19:29:58
【问题描述】:

Liferay 中doView()render() 函数之间的实际区别是什么?还有renderRequestresourceRequest有什么区别?

【问题讨论】:

    标签: liferay portlet


    【解决方案1】:

    doView() = 在 VIEW 模式下处理渲染请求。

    render() = 此方法调用doDispath() 方法并使用getTitle() 方法设置portlet 的标题。然后它根据RenderRequest 中指定的portlet 模式调用doView()doEdit()doHelp() 等之一。


    同样,RenderRequest 是当您想要在 portlet 的 VIEW 模式下处理请求时。如果您的 portlet 使用其他资源来呈现视图(即图像、JavaScript 文件等),那么呈现视图的 JSP 将使用 <portlet:resourceURL /> 标记生成这些资源的有效 URL。这些 URL 将使用一对 ResourceRequestResourceResponse 对象进行处理。

    尽管您可以覆盖资源阶段,但请记住,当您使用ResourceRequest/ResourceResponse 服务时,portlet 无法更改当前的 portlet 模式、窗口状态或呈现参数。并且在资源 url 上设置的参数不是渲染参数,它们仅对当前资源请求有效。

    【讨论】:

    • Liferay 中有哪些不同的模式(例如您提到的 VIEW 模式,它实际上指的是什么)?你能给我链接到一些可以清楚理解的网站吗?或者你能详细说明一下吗?上面的区别我还是不太清楚。
    • @rahulkgupta 您需要先阅读关于 Portlet 的好教程,然后再学习 Liferay,Portlets in action 是一本很好的书,可以帮助您了解基本概念,对于 Liferay,您可以尝试 Liferay in action 或Liferay wiki 或 Liferay 文档
    • 如何在 ActionRequest、ActionResponse 对象中设置 liferay portlet 标题??
    猜你喜欢
    • 1970-01-01
    • 2012-12-31
    • 1970-01-01
    • 2022-11-22
    • 1970-01-01
    • 1970-01-01
    • 2018-03-12
    • 2011-07-06
    • 1970-01-01
    相关资源
    最近更新 更多