开发者

How can Websphere PUMA SPI (PumaLocator) be used with an ICEfaces Portlet?

Symptoms:

PumaLocator is unusable, every findXXX-method returns empty results or throws an exception because nothing was found.

Analysis:

The problem seems that, due to the ICEfaces specific architecture, the method GenericPortlet.doView is invoked only for the first time the Portlet is loaded, and not for the following (AJAX) page updates, e.g. in case of a called ActionListener.

If I use PumaLocator inside the doView-method, everything works fine.

I tried the following attempts yet:

  • Get the PumaLocator in doView, put it into Session and use it later - didn't work
  • Get the RenderRequest in doView, put it into Session and use it later to get a PumaLocator by passing that request - didn't work开发者_运维问答

I would be very glad to have any hints. Thank you!


PUMA checks the authorization for results by using information found in the Context. You must add JavaEE security roles in the deployment descriptor for the AJAX backend servlets the ICEFaces uses. As a thumb of rule if request.getRemoteUser() and request.getUserPrincipal() return something besides null you know PUMA will work. Otherwise it will NOT work and that is intended behaviour.

Alternatively you can attempt to disable the security checks of PUMA like this.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜