Mantis - Hessian
|
|||||
Viewing Issue Advanced Details | |||||
|
|||||
ID: | Category: | Severity: | Reproducibility: | Date Submitted: | Last Update: |
3921 | major | always | 02-27-10 21:03 | 02-27-10 21:09 | |
|
|||||
Reporter: | aloksingh | Platform: | |||
Assigned To: | OS: | ||||
Priority: | normal | OS Version: | |||
Status: | new | Product Version: | 4.0.3 | ||
Product Build: | Resolution: | open | |||
Projection: | none | ||||
ETA: | none | Fixed in Version: | |||
|
|||||
Summary: | 0003921: SerializerFactory doesn't return the correct deserializer | ||||
Description: |
In the class SerializerFactory, loadDeserializer() methods skips the deserializer returned from _factories.. Here is the current code, note the line "deserializer = factory.getDeserializer(cl);" The reference is not being returned from the method, and instead overwritten a couple of lines later. [code] protected Deserializer loadDeserializer(Class cl) throws HessianProtocolException { Deserializer deserializer = null; for (int i = 0; deserializer == null && _factories != null && i < _factories.size(); i++) { AbstractSerializerFactory factory; factory = (AbstractSerializerFactory) _factories.get(i); deserializer = factory.getDeserializer(cl); } // XXX: need test deserializer = _contextFactory.getDeserializer(cl.getName()); if (deserializer != null) return deserializer; [/code] Instead, it should be something like this [code] deserializer = factory.getDeserializer(cl); if (deserializer != null) return deserializer; } [/code] |
||||
Steps To Reproduce: | |||||
Additional Information: | |||||
Relationships | |||||
Attached Files: |
Notes | |||||
|
|||||
|
|