问题描述
||
我指的是来自我的Portlet的具有paramID的URL。该paramID的内容在不同的Portlet中处理,并且具有自己的控制器。
该控制器正在使用HttpServletRequest读取该参数。
HttpServletRequest request = PortalUtil.getoriginalServletRequest(PortalUtil.getHttpServletRequest(renderRequest));
String paramID= request.getParameter(\"paramID\");`
我的参数在网址http://mysite.com?paramID=123
中
当我使用renderURL调用时,HttpServletRequest会读取此参数吗
<liferay-portlet:renderURL var=\"xyz\" portletName=\"ABC\" windowState=\"normal\"/>
...
<a href=\"xyz?pramID\"> Click here</a>
解决方法
有关渲染URL的一些信息在其社区Wiki答案上的此问题下。
另外,在一些不在网络上的教程中,我读到了这种参数传递是最容易通过会话完成的。会话对于porlet和servlet很常见,因此您不必考虑哪个参数在哪里可见,而在哪里看不到。
, 我在调用renderURL时提供了param值
<liferay-portlet:renderURL var=\"xyz\" portletName=\"ABC\" windowState=\"Normal\"/>
</liferay-portlet:renderURL>
.....
<JAVASCRIPT>
var URL = NULL;
function(called){
URL = \"${xyz}¶mID=123\" //and this was read as servlet param
}
</JAVASCRIPT>