Mantis - Resin
Viewing Issue Advanced Details
2298 minor always 01-08-08 08:33 01-08-08 13:22
sam  
ferg  
normal  
closed 3.1.5  
fixed  
none    
none 3.1.5  
0002298: burlap Locale deserialisation
(rep by M Vandamme)

We have encountered a bug with Locale deserialisation. When a locale is
passed
to the server, it is passed as a LocaleHandle. The server tries to
deserialise
this type, but this fails. After this, the server tries to put the sent
data into
a locale object, while the LocaleHandle should construct the locale
object.
After some debugging, the problem was traced to the BurlapInput class,
in the readObject method.
Following code is present in the class ...

      if (cl != reader.getType() && cl.isAssignableFrom(reader.getType()))
        return reader.readMap(this);

      reader = _serializerFactory.getDeserializer(cl);

      return reader.readMap(this);


cl = java.util.Locale
reader.getType() = LocaleHandle

The isAssignableFrom returns false, so the readMap is executed on the
wrong reader,
the one that is fetched for deserializing cl.

Notes
(0002631)
ferg   
01-08-08 13:22   
hessian/2383