2

我有一个简单的 HTML 页面,其中包含一个表单(使用 GET 方法),其操作是一个包含 JSF portlet 的门户页面。我需要在我的 portlet 中访问传递到门户页面的参数——我该如何实现呢?

我尝试code使用以下代码访问视图页面上的参数,但值显示为null.

java.util.Map requestMap = javax.faces.context.FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap(); 
String code = requestMap.get("code");

在其他一些论坛上,有人建议我需要将 portlet id 作为请求参数传递,以便让 portlet 访问传递的请求参数。如果这是真的,我在哪里/如何查找我的 portlet ID 以便 portlet 可以访问请求参数?

4

2 回答 2

3

我会研究公共渲染参数的 WebSphere 实现是否支持这一点。如果ExternalContext请求参数映射没有公开这些值,您可以将请求转换为 aPortletRequest并使用该Map<String,String[]> getPublicParameterMap()方法。

于 2010-01-12T14:05:55.843 回答
0

请在此处查看我的文章将查询参数传递给 JSR-286 portlet 。

我知道这是一种受支持的方式。我看到其他文章声称您可以简单地将 PortletRequest 转换为某些东西并获取参数。这可能不受支持,因为它取决于特定的实现和对内部类名的引用。我推荐以上。

于 2013-03-04T22:57:23.843 回答