Получить параметры из URL в среде портала на WPS7 - PullRequest
1 голос
/ 11 ноября 2011

Я хочу получить параметр из URL в среде портлета.URL-адрес, который я использую для открытия портлета: http://localhost:10039/wps/myportal/myPortlet?recId=100

Когда портлет открывает URL-адрес, он изменяется и выглядит как *http://localhost:10039/wps/myportal/myPortlet/!ut/p/b1/dY7LcoIwAAC_hQ9wElQSckwJ8lLEgjxyYbDTBAQMgkXHr7ft9Nq97cweFnBQmEhfGUtMdJADfqnmRla3Rl2q7sc5Kt_I0d1RxCCOyAZ6EQl8a29CSA3gAy47dfpOU1aoB1NUMsrEerIUz7lu0vma1pY9hNTZRbXZx8jYP8-SBSv_OibxLD66fnwvknYom9xPMzkK9awT_3Ru6i8Wt5SLA7GDTXtPt5OdGYMkd2wnDorD6UHKm8SqrwpRCb6YD5oGMsB_ly2Humu8hdA0TB161D1iFLMlpKu_AP4DhSB0Vf8Jeu4Qb0G1F8FgaxU!/dl4/d5/L2dBISEvZ0FBIS9nQSEh/?recId=100*

На самом деле я хочу получить recID = 100 параметр.Код, который я использую для получения параметра, приведен ниже

PortletRequest portletRequest = (PortletRequest) webAppAccess.getHttpServletRequest().getAttribute( Constants.PORTLET_REQUEST);
HttpServletRequest httpRequest = PortletUtils.getInternalRequest(portletRequest).getHttpServletRequest();                   
httpRequest.getParameter("recId");

, но возвращает null

Может кто-нибудь помочь мне, как я могу получить параметр в данной ситуации?

Примечание: Я использую WebSphere Portal Server 7.

Ответы [ 2 ]

2 голосов
/ 18 ноября 2011

Ну, это не так просто.

Вы должны генерировать определенные URL. WebSphere Portal Advanced Url Generation и Как создать ссылку на портлет и передать параметры.

0 голосов
/ 10 июля 2013

У меня был такой сценарий раньше, и кто-то предложил мне использовать утилиты портлетов, вы можете найти этот класс в пакете "com.ibm.ws.portletcontainer.portlet", есть много конструкторов (RenderRequest, ActionRequest, PortletRequest,...), это метод (PortletUtils.getHttpServletRequest (ВАШ НУЖНЫЙ ОБЪЕКТ)), в котором вы можете найти свои потребности.

...