我可以在同一个项目中包含 Apache Axis 1 和 2 库吗?
如果这听起来像是一个荒谬的想法,那么它确实是一个荒谬的想法。客户只想在其服务器上安装一个项目。我们的 Web 服务将在移动电话和 .NET、Apache Axis 1 和 2 中制作的各种 SOAP 服务之间架起桥梁,这些服务依赖于标准来传输文件,例如 MTOM 和 DIME。
我正在寻找一种“架构”技巧,例如在单独的项目中开发 Axis 1 调用并编译为 jar,然后将其传递到 Axis 2 项目.... 嗯。
无需下载 Axis 1 和 Axis 1 的源代码即可完成任何操作。 2 并使用相同的 xml 库等编译它们。
“这是不可能完成的”是一个可以接受的答案。
谢谢!
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!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
Axis1 和 Axis2 库位于不同的包中 - 难道您不能将它们都放入项目中并使用它们吗?
他们在这里有一个迁移指南,涵盖了一些差异:
http://ws.apache .org/axis2/1_2/migration.html
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
不行,我试过一次。两者依赖于相同 jar 的不同版本。
It can't be done, I tried it once. The two depend on different versions of the same jars.
尝试 JarJar
它使用的想法是创建一个新的 jar,其中包名称按前缀移动。您可以将自己的代码部分捆绑到 jar 中,其字节代码将被修改以使用新的包名称。您的应用程序的其余部分将继续使用旧的包名称 - 即类路径上的旧 jar
编辑:我不记得它们有不同的包名称。在这种情况下,您无需执行任何特殊操作即可将它们一起使用。
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.
我打算建议我们将两个 WAR 文件部署到一个 EAR 文件中,示例。当然,这是两个最终将安装的项目,但在经理面前挥舞一个文件会让我觉得好笑,因为他们可能会吞下它。但是,此评论 表明我什至不能这样做,并且无论如何都需要两个 EAR 文件... -1
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