如何在liferay portlet中设置portlet加载顺序

如何在liferay portlet中设置portlet加载顺序,liferay,liferay-6,Liferay,Liferay 6,我的页面上大约有4个Portlet和2个web内容。在4个portlet中,一个是定制portlet。我的需求就像我需要在最后加载我的定制portlet一样。 我知道我们可以通过在liferay-portlet.xml中添加以下条目来设置 0 从liferay-portlet-app_6_2_0.dtd我了解到 ,渲染权重的默认值为1。如果设置为小于1的值,则 portlet是并行呈现的。如果设置为1或更大的值,则 portlet是串行呈现的。具有更大渲染权重的portlet具有更大的 优先级和

我的页面上大约有4个Portlet和2个web内容。在4个portlet中,一个是定制portlet。我的需求就像我需要在最后加载我的定制portlet一样。 我知道我们可以通过在liferay-portlet.xml中添加以下条目来设置

0

从liferay-portlet-app_6_2_0.dtd我了解到 ,渲染权重的默认值为1。如果设置为小于1的值,则 portlet是并行呈现的。如果设置为1或更大的值,则 portlet是串行呈现的。具有更大渲染权重的portlet具有更大的 优先级和将在呈现权重较低的portlet之前呈现


我的问题是,如何设置liferay Portlet的渲染权重。我是否需要在某些属性文件中输入,或者我可以使用控制面板来实现这一点。

渲染顺序没有保证,您不应该在渲染阶段更改任何状态-事实上,没有传播状态更改(例如公共渲染参数等),如果只是因为您甚至无法在RenderRequest/RenderResponse上更改它们


如果依赖于特定渲染顺序的假设,则应该更改体系结构,以便不再需要此假设。如果您的portlet需要一些时间来呈现,您可以让它异步显示(例如,与内置的rssportlet类似)。如果我没记错的话,这是通过在
liferayportlet.xml

AFAIK中将
设置为
0
设置为
true
来实现的,没有通过控制面板或属性文件实现的规定。您可以创建ext插件并在liferay-portlet-ext.xml中提供更改。为什么需要在最后加载自定义portlet?自定义portlet有一些冗余代码,因此加载页面需要时间。如果我删除了自定义Portlet,页面加载速度会更快。我只是想在不更改代码的情况下更快地加载页面。我知道应该删除代码中的冗余,但是更改它会产生很大的影响。所以我发现,当页面加载时,是否有任何方式可以首先加载所有web内容或portlet,最后加载这个特定的portlet。