在WPS7上的门户环境下从URL获取参数

时间:2011-11-11 16:06:20

标签: websphere-7 websphere-portal

我想从portlet环境下的URL获取参数。 我用来打开portlet的URL是 http:// localhost:10039 / wps / myportal / myPortlet?recId = 100

当portlet打开时,URL会发生变化,看起来像 * HTTP://本地主机:!?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 个答案:

答案 0 :(得分:2)

嗯,这并不容易。

您必须生成特定的网址。 WebSphere Portal Advanced Url GenerationHow to create a link to a portlet and pass parameters.

答案 1 :(得分:0)

之前我有这个场景,有人建议我使用Portlet实用程序,你可以在“com.ibm.ws.portletcontainer.portlet”pakcage中找到这个类,有很多构造函数(RenderRequest,ActionRequest,PortletRequest, ...),这是你可以找到你需要的方法(PortletUtils.getHttpServletRequest(你需要的对象))。