[jboss-jira] [JBoss JIRA] Commented: (JBSEAM-332) javabeans in session are not distributable
Keith Naas (JIRA)
jira-events at jboss.com
Wed Aug 16 12:46:27 EDT 2006
[ http://jira.jboss.com/jira/browse/JBSEAM-332?page=comments#action_12341338 ]
Keith Naas commented on JBSEAM-332:
-----------------------------------
We have identified the problem as an issue with an Enhanced class being used as a property in another object. For instance, we created a simple non-seam test case with two classes: Foo and Bar. Foo contains an instance of Bar. When the user hits our test servlet, we create an instance of Foo. We create an Enhanced version of Bar using the same mechanism as Seam uses for JavaBeanInterceptors. We then call foo.setBar(enhancedBarInstance). Everything works fine, until we bring down a server in the cluster. The server log on the new server that is servicing the request shows:
{code}
java.lang.ClassNotFoundException: No ClassLoaders found for: com.biglots.sessiontest.Bar$$EnhancerByCGLIB$$cae13ff3
{code}
Note that the only Enhanced class is Bar, not Foo. Things may work fine if Foo is Enhanced but Bar is not Enhanced. We are going to test that scenario. In the meantime, we have attached an ear and a zip of the source code.
> javabeans in session are not distributable
> ------------------------------------------
>
> Key: JBSEAM-332
> URL: http://jira.jboss.com/jira/browse/JBSEAM-332
> Project: JBoss Seam
> Issue Type: Bug
> Components: Core
> Environment: Seam 1.0, JBoss 4.0.4GA, Windows Server 2003, Cluster of 4 nodes on 2 machines.
> Reporter: Keith Naas
>
> We have an application that makes use of JavaBeans for a lot of our JSF "actions". When one of our nodes is brought down, the session should Seamlessly failover to another node. The user is sent to a different node, but the entire session appears to be in a clean state. We looked through the server logs and saw the following:
> 2006-08-15 10:47:36,658 ERROR [org.jboss.web.tomcat.tc5.session.JBossCacheService] [.......] loadSession(): id: GWrcdSJEASvXSJnX6fNHNg**exception occurred during serialization: java.lang.ClassNotFoundException: No ClassLoaders found for: com.ourapp.web.beans.WorksheetBean$$EnhancerByCGLIB$$bf40374c
> All of our beans are Serializable, but it appears that there is an issue with the cache sync of the CGLib proxy classes. This specific bean does have some service properties that are transients. It also has properties that refer to other Web JavaBeans.
> We will be investigating this some more, but we wanted to get this logged since it appears to be a major issue that prevents us from clustering our Seam apps.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list