[weld-issues] [JBoss JIRA] Commented: (WELD-812) Session serialization fails because of non-serializable org.jboss.weld.injection.SimpleInjectionPoint

Ramon Rockx (JIRA) jira-events at lists.jboss.org
Fri Dec 31 10:13:17 EST 2010


    [ https://issues.jboss.org/browse/WELD-812?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12572580#comment-12572580 ] 

Ramon Rockx commented on WELD-812:
----------------------------------

Pete, do you think this bug also covers this problem:

Situation: Glassfish 3.1 clustered, when accessing a jsf page which uses our VisitorController class, the following error log appears:
[#|2010-12-31T15:38:22.071+0100|INFO|glassfish3.1|org.apache.catalina.session.ManagerBase|_ThreadID=16;_ThreadName=Thread-1;|PWC2785: Cannot serialize session attribute org.jboss.weld.context.http.HttpSessionContext#org.jboss.weld.bean-/D:/glassfish-3.1-b32/glassfish/nodes/localhost/mls1/applications/myliquidsuite/myliquidsuite-web_war/-ManagedBean-class nl.asknow.liquidplatform.myliquidsuite.application.businfra.controller.VisitorController for session cd3761b77db86b3dbe76ae7b5057
java.io.NotSerializableException: java.util.logging.Logger
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156)
	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.defaultWriteFields(ObjectOutputStream.java:1509)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
        ...

Some relevant code of the VisitorController:
import org.slf4j.Logger;

@Named
@SessionScoped
public class VisitorController implements Serializable {
	
    /**
     * uid
     */
	private static final long serialVersionUID = -4647906892075275641L;


	@Inject
	protected transient Logger log;


...

}

Notice that the injected org.slf4j.Logger is an slfj4 logger and not a java.util.logging.Logger (as mentioned in the error).
When I remove the log property, everything works just fine.



> Session serialization fails because of non-serializable org.jboss.weld.injection.SimpleInjectionPoint
> -----------------------------------------------------------------------------------------------------
>
>                 Key: WELD-812
>                 URL: https://issues.jboss.org/browse/WELD-812
>             Project: Weld
>          Issue Type: Bug
>          Components: Conversations
>    Affects Versions: 1.1.0.CR2
>            Reporter: Sivakumar Thyagarajan
>            Assignee: Pete Muir
>             Fix For: 1.1.0.Final
>
>
> Our HA session serialization and failure testcase fails from the RC2 integration. This test case used to pass earlier(with BETA2).
> It appears that since Weld 1.1.0.RC2, the session has a non-serializable SimpleInjectionPoint in its closure of references that prevents serialization of the session.
> Please see the GlassFish issue http://java.net/jira/browse/GLASSFISH-15278 for more information.
> This prevents our HA failover scenarios.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the weld-issues mailing list