Can I include both Apache Axis 1 and 2 libraries in the same project?
If it sounds like a ridiculous idea then it is. The client only wants to have to install one project on their server. Our web service will be bridging between mobile phones and various SOAP services made in .NET, Apache Axis 1 and 2, which rely on standards to transfer files such as MTOM and DIME.
I am looking for an开发者_开发百科 'architecture' trick, such as develop the Axis 1 calls in a separate project and compile as a jar, to then pass it into the Axis 2 project.... Hmmm.
Anything rather than having to download the source code for Axis 1 & 2 and compile them using the same xml libraries, etc.
"It can't be done" is an acceptable answer.
Thanks!
Axis1 and Axis2 libraries live in different packages - can't you just put them both in the project and use them?
They have a migration guide here that covers some of the differences:
http://ws.apache.org/axis2/1_2/migration.html
It can't be done, I tried it once. The two depend on different versions of the same jars.
Try JarJar
The idea it uses is to create a new jar with package names shifted by a prefix. You can bundle the part of your own code in the jar whose byte code will be modified to use new package name. The rest of the your app will keep using old package name -- that is the old jar on the classpath
Edit: I didn't remember that they have different package names. In that case you don't need to do anything special to use them together.
I was going to suggest that we deploy two WAR files into one EAR file, example. It's two projects that will eventually be installed of course but waving one file in front of the manager would amuse me as they'd probably swallow it. However, this comment suggests that I can't even do that and would need two EAR files anyway... -1
精彩评论