[jboss-jira] [JBoss JIRA] Commented: (JASSIST-42) Proxy serialization looses inner data objects

Andrew Dinn (JIRA) jira-events at lists.jboss.org
Thu Mar 18 13:29:37 EDT 2010


    [ https://jira.jboss.org/jira/browse/JASSIST-42?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12520696#action_12520696 ] 

Andrew Dinn commented on JASSIST-42:
------------------------------------

I have attached a patch against the current trunk to the forum thread mentioned in my last comment  which

1) makes serialization use the cache correctly
2) provides an alternative way to serialize objects using subclasses ProxyObjectOuptut/InputStream of classes ObjectOuptut/InputStream.

This patch requires a minor change to javassist clients. They must no longer call ProxyFactory.setHandler(). Instead they must cast each newly created proxy instance to a ProxyObject and call method setHandler() on the proxy instance.


> Proxy serialization looses inner data objects
> ---------------------------------------------
>
>                 Key: JASSIST-42
>                 URL: https://jira.jboss.org/jira/browse/JASSIST-42
>             Project: Javassist
>          Issue Type: Bug
>            Reporter: Damien Lecan
>            Assignee: Shigeru Chiba
>            Priority: Blocker
>
> I working with proxies build with ProxyFactory method.
> When I want to serialize/deserialize it, everything seems to be ok except that only proxy instance is serialized, not inner objects.
> Eg.
> Object "A" contains an instance of "B"
> After serialization/deserialization of a proxy of A, instance of "B" in "A" is null
> When I look at this code :
> public static SerializedProxy makeSerializedProxy(Object proxy)
> throws java.io.InvalidClassException
> {
> Class clazz = proxy.getClass();
> return new SerializedProxy(clazz, ProxyFactory.getFilter(clazz),
> ProxyFactory.getHandler(clazz));
> }
> I don't understand how serialization can keep inner objects ...

-- 
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 jboss-jira mailing list