Alejandro Revilla
unread,Dec 12, 2009, 9:04:52 PM12/12/09Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to jPOS Users
I spent some time researching a nasty issue today.
ISOMsg.writeExternal is not normalized, so the same ISOMsg (content-wise) serialized in two different JVMs could give us different serialized byte arrays.
This is usually not a problem, when we deserialize we construct the proper ISOmsg, but we have some situations (such as in org.jpos.space.MD5Template) where we take a digest of the serialized image, and the same message produces different images.
The solution is to normalize ISOMsg.writeExternal. We could sort the Hashtable, or iterate from fields 0..128, but I think it's time to say good bye to our Hashtable there and move to a Map.
I made the change in r2836 and it passes all tests; I also tested the generated jar at a couple of jPOS applications and everything looks fine.
I hope you can give this r2836 a shot and tell us it works for you.