Hello,

I am having problems with implementing an portlet AJAX solution using
JSF and JSF Apache portlet bridge.

Specifically I am trying to implement an AJAX enabled JSF page using
the technique referenced in

http://java.sun.com/javaee/javaserverfaces/ajax/tutorial.jsp

Specifically I'm registering a PhaseListener to handle the AJAX requests.

This would work as in the tutorial in a non-portal context. However,
I'm having problems in my portal (WebSphere Portal v6.0) using the
org.apache.portals.bridges.jsf.FacesPortlet.

The problem is the following:

Client makes an XMLHttpRequest to the faces servlet
(javax.faces.webapp.FacesServlet) which eventually triggers my
PhaseListener. I guess this is already where something is wrong: The
FacesServlet throws an exception upon this request

[Faces Servlet]: java.lang.IllegalArgumentException: Only
PortletContext supported.

(Stacktrace below).

It seems that the SessionMap can only use a PortletRequest in its
constructs, which is apparently not what it is getting. So I guess
using the FacesServlet is wrong.

So which servlet should I use to route the AJAX through the faces
lifecycle in a portlet context?

Hope someone can help ;-)

Cheers,
- Karl

--- Techs ----
WebSphere Portal v6.0
Java1.4
MyFaces 1.1.5
Apache Portal Bridge: portals-bridges-common-1.0.3, portals-bridges-jsf.1.0.3


--- stacktrace for FacesServlet-----

[Faces Servlet]: java.lang.IllegalArgumentException: Only
PortletContext supported.
at org.apache.portals.bridges.jsf.SessionMap.<init>(SessionMap.java:56)
        at 
org.apache.portals.bridges.jsf.ServletExternalContextImpl.getSessionMap(ServletExternalContextImpl.java:230)
        at 
org.apache.myfaces.portlet.PortletUtil.isPortletRequest(PortletUtil.java:64)
        at 
org.apache.myfaces.lifecycle.RestoreViewExecutor.deriveViewId(RestoreViewExecutor.java:107)
        at 
org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:57)
        at 
org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:95)
        at 
org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:70)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:139)

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to