This is a show stopper issue because it means that any objects assigned to Tapestry properties that happen to be squeezed as serializable objects cause the application to crash during a form rewind.
Richard -----Original Message----- From: Hensley, Richard [mailto:[EMAIL PROTECTED] Sent: Friday, August 12, 2005 12:20 PM To: Tapestry users Subject: RE: Tap4-beta 4: Error using DataSqueezer SerializableAdaptor Actually this was tapestry-552, so I added my comments to that. -----Original Message----- From: Hensley, Richard [mailto:[EMAIL PROTECTED] Sent: Friday, August 12, 2005 12:16 PM To: Tapestry users Subject: Tap4-beta 4: Error using DataSqueezer SerializableAdaptor I think there is a bug in the hivemind declaration of the SerializableAdaptor. When my application tries to unsqueeze a serializable object, I get the following stack dump. # org.apache.tapestry.util.io.ResolvingObjectInputStream.resolveClass(Resolvin gObjectInputStream.java:50) # java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1513) # java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1435) # java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1626) # java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274) # java.io.ObjectInputStream.readObject(ObjectInputStream.java:324) # org.apache.tapestry.util.io.SerializableAdaptor.unsqueeze(SerializableAdapto r.java:125) # $SqueezeAdaptor_105ac0ee43f.unsqueeze($SqueezeAdaptor_105ac0ee43f.java) # org.apache.tapestry.util.io.DataSqueezerImpl.unsqueeze(DataSqueezerImpl.java :181) # $DataSqueezer_105ac0ee32b.unsqueeze($DataSqueezer_105ac0ee32b.java) The relevant information is that the resolving object input stream has a null _resolver member. This is because the SerializableAdaptor has a null _resolver member. I think this is because either the hivemind declaration is wrong, or auto-wiring is not working in this case. The hivemind declaration is in tapestry.data.xml: <service-point id="SerializableAdaptor" interface="SqueezeAdaptor"> Converts an object down to a compressed byte stream, and then to a MIME-like string representation. <invoke-factory> <construct class="SerializableAdaptor"/> </invoke-factory> </service-point> According to the Hivemind documentation a ClassResolver is auto-wired to a property named classResolver, SerialziableAdaptor has a property named Resolver, and therefore will not auto-wire. Any comments on this problem? I'm going to add a JIRA issue for this with this email in it. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
