Установка параметра из портлета URl в HttpServletRequest - PullRequest
0 голосов
/ 30 мая 2011

Я имею в виду URL, в котором есть paramID из моего портлета.Содержимое этого paramID обрабатывается в другом портлете и имеет собственный контроллер.

Этот контроллер принимает HttpServletRequest для чтения этого параметра.

HttpServletRequest request = PortalUtil.getOriginalServletRequest(PortalUtil.getHttpServletRequest(renderRequest));
String paramID= request.getParameter("paramID");`

Мой параметр находится в URL http://mysite.com?paramID=123

Будет ли HttpServletRequest читать этот параметр, когда я звоню с использованием renderURL

<liferay-portlet:renderURL var="xyz" portletName="ABC" windowState="Normal"/>
...
<a href="xyz?pramID"> Click here</a>

Ответы [ 2 ]

0 голосов
/ 09 июня 2011

Я сделал это с предоставлением значения параметра, когда вызывал renderURL

<liferay-portlet:renderURL var="xyz" portletName="ABC" windowState="Normal"/>
</liferay-portlet:renderURL>

.....

<JAVASCRIPT>
   var URL = NULL;       
   function(called){
          URL = "${xyz}&paramID=123"              //and this was read as servlet param
   }
</JAVASCRIPT>
0 голосов
/ 06 июня 2011

Некоторая информация о URL-адресе для рендеринга и т. П. Находится под в этом вопросе в ответе его сообщества на вики.

Также в каком-то учебнике, который не находится в сети, я читал, что этот тип передачи параметров:проще всего сделать через сессию.Сессия является общей для портлетов и сервлетов, поэтому вам не нужно думать, где какой параметр виден, а где нет.

...