Liferay:哪个请求使用了同时向两个portlet发送参数?
我正在使用Liferay 6.2 我希望将参数从portlet A发送到portlet B,但我希望portlet B也收到该参数 通常使用此选项,但不起作用: 这是portlet A上的代码 PortletURL renderURL=PortletURLFactoryUtil.create(请求,portletBName,主题显示.getPlid(),PortletRequest.RENDER_阶段) setParameter(“mvcPath”,“/html/carinfo/view_2.jsp”); renderURL.setParameter(“carId”,car.getId()) 可以使用哪种方法?示例代码,如果可以,请Liferay:哪个请求使用了同时向两个portlet发送参数?,liferay,httprequest,Liferay,Httprequest,我正在使用Liferay 6.2 我希望将参数从portlet A发送到portlet B,但我希望portlet B也收到该参数 通常使用此选项,但不起作用: 这是portlet A上的代码 PortletURL renderURL=PortletURLFactoryUtil.create(请求,portletBName,主题显示.getPlid(),PortletRequest.RENDER_阶段) setParameter(“mvcPath”,“/html/carinfo/view_2.j
谢谢。您需要定义一个公共渲染参数。它是用于portlet间通信的JSR标准 有关更多示例,请查看此示例portlet或google for
公共呈现参数示例Liferay
要做的关键事情是将其放入每个参与portlet的portlet.xml中
carId
然后,当jsp中有一个读卡器url时,如下所示:
<portlet:renderURL var="rednerURL">
<portlet:param name="mvcPath" value="/html/carinformation/view_2.jsp"/>
<portlet:param name="carId" value="${car.id}"/>
</portlet:renderURL>
好的,我知道了。只需要配置一个公共参数。在portlet上创建PortletURL,如上所述。在portlet B上,您可以正常接收它。您好,我尝试了,但还不够。当我在portlet B的actionURL中传递portlet B的jsp页面时,portlet A呈现给这个jspPage,而不是portlet B呈现给这个jspPage。请帮助我。我在问题中添加了更多描述。我们通常这样从portlet B调用portlet A的html。您是否将mvcPath参数设置为公共呈现参数?你不能那样做。public render参数应该正好是carId。然后将公共呈现参数发送到所有支持给定公共呈现参数的portlet。因此,使用公共渲染参数无法做到这一点。如何处理此代码:PortletURL renderURL=PortletURLFactoryUtil.create(请求,portletBName,主题显示.getPlid(),PortletRequest.RENDER_阶段);setParameter(“mvcPath”,“/html/carinfo/view_2.jsp”);renderURL.setParameter(“carId”,car.getId());