----- Original Message ----- From: <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Thursday, June 27, 2002 9:46 AM Subject: Re: HashMap/Hashtable, nil/null and timing.
> Hello ? > > Anyone interested in interoperability or migration from ApacheSOAP ? yeah, I guess we should interop with our old systems. > > Costin > > On Wed, 26 Jun 2002 [EMAIL PROTECTED] wrote: > > > I have 3 problems. > > > > First, I noticed that apache-soap is sometimes using 'null' while > > axis is using 'nil'. I have no idea why this happens - but it > > affects the interoperability ( i.e. can't make calls from apache-soap > > to axis ). I have a simple patch that would accept null - let me know > > if I can send it. yes, post the patch...I dont know what the rules are about committing something that will cause axis to diverge from the soap spec though. I know sam likes being forgiving on the inputs, I am more for absolute strict adherence to well defined specs at both ends. > > > > Second problem: it seems apache-soap uses Hashtable while Axis > > is using HashMap ( for soap map ). That creates pretty serious > > problems in migrating from a-soap to axis, as all the code will > > have to be changed. There are 3 (possible) solutions I found: > > > > - change the bean introspector to see if the attribute is Hashtable > > I couldn't understand the code, so I can't do that. > > > > - add some HastableSerializer/Deserializer, duplicating the MapS/D > > code, then some configuration ( is it possible to replace the > > encoders for standard types ? ) > > > > - use a system property ( or setting ) in MapS/D in one line, > > the one creating a HashMap. Since Hashtable implements Map, there > > is no other change needed. That's what I did to get my code working, > > and I can provide a patch using System property ( if someone who > > understand the axis config could implement this - it would be great ). I havent looked at any of that code and woudl be out of my depth. Something to discuss tho'. What do others think should be done? > > > Finally, I would like to add few lines of code and a Log to > > display the time - how much does it take to do Call.invoke(), > > the time spend in doPost() and few other important counters. > > This will be controled by a special Log channel, and do nothing > > if the time log is not set to debug. > > Again, I can provide a patch if you want it. This would be good. Some of my past services returned exec time as one of the fields in a response; lets the caller monitor everything for load testing and makes it easy to split network delays from computation.