Hi Dan,
Thanks for the info. If this is the intended behavior, and is per jax-ws spec, then I'll just change my APIs. No need to file a JIRA and create extra work for you guys. ;-) Thanks again, Chris -----Original Message----- From: Dan Diephouse [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 14, 2007 2:01 PM To: [email protected] Subject: Re: [xfire-user] Differences Between 1.2.4 and 1.2.5 Hi Christopher, I think the thing that changed here is that we added support for wrapped operations with multiple output parameters. Yes, it is intended to be like this as its what the jax-ws spec says things should be like. Unfortunately there is no switch at the moment to turn this off :-( Which I guess leaves two options 1. Move to 1.2.5 and change your APIs 2. Stay on 1.2.4 and file a JIRA for 1.2.6 to have the ability to turn off unwrapping Cheers, - Dan On 3/14/07, Christopher Moesel <[EMAIL PROTECTED]> wrote: I upgraded my WSDL-first service to use XFire 1.2.5 today. Swapped out the jars and ran the application-and discovered that it no longer worked-whenever I sent a request to the service, I got a java.lang.IndexOutOfBoundsException. So I decided I better try regenerating the server stubs using the new 1.2.5 jar. I found that the generated service interface was quite a bit different now. (1) The parameter style has changed from SOAPBinding.ParameterStyle.BARE to SOAPBinding.ParameterStyle.WRAPPED. This is probably more accurate, as I had designed the WSDL in doc/literal wrapped style. (2) The signature of the methods has drastically changed. Whereas before an operation called MyOperation would look like this: MyOperationResponseType myOperation ( MyOperationType input); Now, it looks more like this: int myOperation (String input1, String input2, Holder<String> output1, Holder<String> output2); All of the individual elements of the request and response are individually referenced, one of the output elements is the return type, and the others are passed in as parameters, wrapped in a Holder. Now of course, my old implementation is totally out of wack with the new generated interface. A few questions: (1) What caused this huge change between 1.2.4 and 1.2.5? (2) Is the new functionality described above the intended functionality? (3) If so, are there any advantages to the new way aside from the possibility that some people might just like it that way? (4) If there are no concrete advantages, is there an easy way for me to configure it to generate the interface the way it used to (I guess that might mean forcing it to BARE)? Thanks! Chris -- Dan Diephouse Envoi Solutions http://envoisolutions.com | http://netzooid.com/blog
