0

有没有办法访问 Jetspeed2 Portlet/Portal 中的 URL 参数?

喜欢:www.bla.com/portal/page.psml?param=12345

我只能找到一些liferay(PortalUtil.java)的工具来访问httpservletrequest,但据我所知,jetspeed没有这样的东西?

我认为公共渲染参数可以用于这样的事情,但我在这里有点困惑?以前没有人遇到过这个问题吗?

提前致谢 :)

4

2 回答 2

0

不知道它是否适用于 jetspeed,但您可以尝试像这样获取 httprequest:

HttpServletRequest httpRequest = (HttpServletRequest) request.getAttribute("javax.servlet.request");

然后在这样的标题中找到查询字符串:

String referer = httpRequest.getHeader("referer");

然后,您将拥有完整的页面引用,以便您可以解析查询字符串。

于 2012-11-16T14:02:55.823 回答
0

找到了答案:


在 2.1 版之前,Jetspeed 将门户请求参数与特定于 portlet 的参数合并,有效地允许“共享”参数。这不符合 JSR-168 PLT.11,因此默认情况下现在禁用。

通过设置 merge.portal.parameters.with.portlet.parameters=true 这个特性可以“恢复”。在portal 和portlet 参数同名的情况下,默认情况下portlet 参数将首先在values 数组中提供,但这也可以通过设置merge.portal.parameters.before.portlet.parameters=true 来覆盖

将这两个属性都设置为 true 将提供“旧”的 2.1 之前的行为。注意:对于单个 portlet,可以通过在 jetspeed-portlet.xml 中将这些属性设置为元数据来覆盖这些全局设置

merge.portal.parameters.with.portlet.parameters=false merge.portal.parameters.before.portlet.parameters=false

使用 2.0 规范中的公共渲染参数

于 2011-03-06T09:17:02.733 回答