[richfaces-issues] [JBoss JIRA] Resolved: (RF-7533) a4j:keepAlive problem

Nick Belaevski (JIRA) jira-events at lists.jboss.org
Thu Jul 16 09:29:29 EDT 2009


     [ https://jira.jboss.org/jira/browse/RF-7533?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Nick Belaevski resolved RF-7533.
--------------------------------

    Resolution: Won't Fix
      Assignee: Tsikhon Kuprevich


Looks like a WL specific issue - bean holding EJB injection can't be serialized.
Use lookup instead of injection as a workaround.

> a4j:keepAlive problem
> ---------------------
>
>                 Key: RF-7533
>                 URL: https://jira.jboss.org/jira/browse/RF-7533
>             Project: RichFaces
>          Issue Type: Bug
>          Components: component-a4j-core
>    Affects Versions: 3.3.1
>         Environment: weblogic 10.3 ,JDK jrockit 1.6
>            Reporter: qu zheng
>            Assignee: Tsikhon Kuprevich
>            Priority: Critical
>
> The back bean (mybackbean) used Local session bean injection,like @EJB private IBizLocal bizSB, the page use <a4j:keepAlive bean="mybackbean">,when i visite the page first time,the exception occurs;but in my jboss as,everything is ok.
> My application is orgnized ear applicaion,ejb and the web is descibed in applicaiton.xml
> javax.ejb.EJBException: Attempt to pass a reference to an EJBLocalObject to a remote client.  A local EJB component may only be accessed by clients co-located in the same ear or standalone jar file.
> 	at com.cup.ares.manage.dtc.service.impl.InstGroupServiceSB_rg938q_InstGroupServiceLocalImpl.writeObject(InstGroupServiceSB_rg938q_InstGroupServiceLocalImpl.java:687)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)
> 	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)
> 	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
> 	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
> 	at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
> 	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
> 	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
> 	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
> 	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
> 	at java.util.HashMap.writeObject(HashMap.java:1001)
> 	at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)
> 	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)
> 	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
> 	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
> 	at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
> 	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
> 	at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
> 	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
> 	at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
> 	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
> 	at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
> 	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
> 	at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
> 	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
> 	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
> 	at com.sun.faces.renderkit.ResponseStateManagerImpl.writeState(ResponseStateManagerImpl.java:233)
> 	at javax.faces.render.ResponseStateManager.writeState(ResponseStateManager.java:155)
> 	at org.ajax4jsf.application.AjaxStateManager.writeState(AjaxStateManager.java:294)
> 	at org.ajax4jsf.application.AjaxStateManager.writeState(AjaxStateManager.java:230)
> 	at com.sun.faces.application.ViewHandlerImpl$WriteBehindStringWriter.flushToWriter(ViewHandlerImpl.java:819)
> 	at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:191)
> 	at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
> 	at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
> 	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
> 	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:248)
> 	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
> 	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
> 	at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
> 	at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
> 	at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
> 	at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
> 	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
> 	at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
> 	at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
> 	at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
> 	at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
> 	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
> 	at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
> 	at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
> 	at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3496)
> 	at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
> 	at weblogic.security.service.SecurityManager.runAs(Unknown Source)
> 	at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180)
> 	at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
> 	at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
> 	at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
> 	at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the richfaces-issues mailing list