1

像往常一样,我来找你有一个关于 WebLogic 上的 portlet 我无法解决的问题......

所以.. 我有两个 portlet 在同一个页面上运行。我的 portlet 需要从 url 中获取一个参数(AES 或加密的河豚),对其进行解密,然后将请求发送到具有该值的 WS。哪个。此外,我需要将此值发送到另一个 portlet(登录 portlet),以了解他是否应该跳过某个步骤。所以.. 长话短说,我需要找到一种方法来发送这个值,而不是在 url 中(因为它需要解密并且我无法显示它),但可能在所有 portlet 可见的会话中。一种快速的方法是使用 cookie,但 cookie 很容易被黑客入侵。我尝试使用 APPLICATION_SCOPE,但其他 portlet 看不到它。

设置为

session.setAttribute("myval", myval, PortletSession.APPLICATION_SCOPE);

然后在另一个 portlet 中使用

session.getAttribute("myval",PortletSession.APPLICATION_SCOPE);

我查看了 APPLICATION_SCOPE 应该如何工作,阅读了共享参数,但找不到真正适合我需要的东西。我有点卡住所以我决定问。也许你们可以帮忙。

http://portals.apache.org/pluto/portlet-1.0-apidocs/javax/portlet/PortletSession.html

https://www.ibm.com/developerworks/mydeveloperworks/blogs/Joey_Bernal/entry/portlet_session_scope_and_sharing?lang=en

问候 !

4

1 回答 1

1

我克服了它。似乎我在错误的地方进行了调用,因此该属性没有从我需要的 doView 进入会话。共享参数的答案确实是 APPLICATION_SCOPE。

谢谢!

于 2012-11-01T14:01:23.613 回答