案例是: 页面上的几个portlet(搜索,登录和其他portlet)。 jsession是暂停。 尝试搜索,转到登录页面。 但是:网址是 ?烯/启动p_p_state =正常&安培; p_p_lifecycle = 1&安培; p_p_id = Search_WAR_INSTANCE_1x2x&安培; p_l_id = 10715&安培; p_auth = lYs61bin&安培; p_p_mode =视图&安培; p_v_l_s_g_id = 0
来自搜索portlet的错误(“您无权访问”)。 如果我设置p_p_lifecycle = 0 - >没错。
问题是如何更改p_p_lifecycle。 非常感谢你
答案 0 :(得分:3)
生命周期参数用于指定必须调用portlet的哪个方法阶段,因此将调用哪个方法。 0表示渲染,1表示processAction,2表示serveResource。 如果您将JSP与liferay-portlet taglib一起使用,则可以通过调用:
来更改生命周期例如:
<liferay-portlet:actionURL var="myUrl">
</liferay-portlet:actionURL>
此代码将在名为&#34; myUrl&#34;的变量中为您的processAction(生命周期= 1)创建一个URL。您可以像这样使用此URL,例如:
<aui:form action="${myUrl}" method="post">...</aui:form>
希望它对你有所帮助。
利奥