A big +1 to putting the type mapping registry on the service -- Tom Jordahl
-----Original Message----- From: Russell Butek [mailto:[EMAIL PROTECTED]] Sent: Wednesday, February 20, 2002 10:40 AM To: [EMAIL PROTECTED] Subject: typemapping on service rather than Call (was: Re: [GUMP] Build Failure - Axis) This bit of code brings up an issue we've talked about, but I don't think resolved. The type mapping registration should really be done on the service, not on the call object. There could be many call objects created from a service that all use the same registry and it's a lot of overhead to register the type mappings for every call object. If the registration was moved, then this "if (firstCall)" check wouldn't occur. The code inside the if block would be done in the service rather than in the stub. Since we probably won't resolve this anytime soon, I'll just make this code thread-safe for now. Russell Butek [EMAIL PROTECTED] Glyn Normington/UK/IBM@IBMGB on 02/20/2002 09:09:48 AM Please respond to [EMAIL PROTECTED] To: [EMAIL PROTECTED] cc: Subject: Re: [GUMP] Build Failure - Axis I can't tell where the IllegalStateException originates from as the Gump log doesn't show the stack trace of that exception. However, I came across some non-threadsafe code in AddressBookSOAPBindingStub: if (firstCall) { firstCall = false; (generated by org.apache.axis.wsdl.toJava.JavaStubWriter), so I wonder if that might be the cause? Getting the stack trace would be a help in this situation, even if it only points to an object which has been corrupted earlier, so I've added fatal error logging to the testcase to ensure Gump records the details. Glyn