Hi Mike. The Java route for different versions of the WSDL is a very good solution. Especially if you couple this with Maven2 and the use of an artifact repository such as Archiva (http://archiva.apache.org/). Then, you can construct an individual, versioned JAR file for each version of the WSDL. In your Java code the run the application you can then simply configure it to use the appropriate version as necessary. This would remove the need to "update your classpath" - you'd simply let Maven2 manage the dependencies.
Another follow on question to your previous email: Are they changing the WSDL or the Schema of the web services? Alastair This e-mail and any attachments are intended solely for the use of the intended recipient(s) and may contain legally privileged, proprietary and/or confidential information. Any use, disclosure, dissemination, distribution or copying of this e-mail and any attachments for any purposes that have not been specifically authorized by the sender is strictly prohibited. If you are not the intended recipient, please immediately notify the sender by reply e-mail and permanently delete all copies and attachments. The entire content of this e-mail is for "information purposes" only and should not be relied upon by the recipient in any way unless otherwise confirmed in writing by way of letter or facsimile. -----Original Message----- From: Mike Marchywka [mailto:[email protected]] Sent: Thursday, April 02, 2009 9:18 AM To: [email protected] Subject: RE: How best to transform a XML file into a message. ________________________________ > Date: Thu, 2 Apr 2009 08:37:01 -0700 > Subject: Re: How best to transform a XML file into a message. > From: > To: [email protected] > > Sam, > > IMHO, it isn't worth doing web services unless you use the autogenerated code. I learned from experience to stop hand jamming xml. If your WSDL changes, you want to re-autogenerate the plumbing code on both your client and server side ... and with any luck, any code changes you have are isolated in the code you had to write in order to use the objects generated on your client side. > > I spent a lot of time with the C generated code and never did get it to work well I so went back to java axis and everything pretty much worked right away. But, the reason for mentioning this now, is that I have subsequently found that our service provider often updates the WSDL file. This turns out to be fine in java since I can diff the wsdl files, re generate the class files unless there is something gross that has been changed, and then almost all of my reflection-invoked code still runs: I can archive, upload, and download things in a complete and consistent manner by just looking for public get/set methods. Is there some similar facility in the C- axis to reflection invokation? I guess if you put all that in a DLL/SO you can load the library of your choice. With java, if I really need to, I can point the class path to pick up either the current or prior WSDL class files with little effort. _________________________________________________________________ Rediscover Hotmail(r): Now available on your iPhone or BlackBerry http://windowslive.com/RediscoverHotmail?ocid=TXT_TAGLM_WL_HM_Rediscover _Mobile1_042009
