使用多个 WSDL (xmlbean) 处理共享名称空间

发布于 2024-09-10 04:05:27 字数 200 浏览 6 评论 0原文

我有五个共享名称空间的 WSDL,但不是全部。我用它们生成客户端代码(使用 XMLBeans 进行数据绑定)。他们单独编译得很好。我根据每个生成的客户端代码创建 JAR 文件。

当我尝试使用项目中的所有 JAR 文件时,我会遇到命名/编译冲突。

我想尽可能地重复利用。有没有什么聪明的方法来处理这个问题(而不是在包结构中为每个客户端提供一个自己的节点)?

I have five WSDL's that share namespaces, but not all of them. I generate client code out of them (databinding with XMLBeans). Seperately they compile fine. I create JAR files out of each generated client code.

Once I try to use all JAR files within a project, I get naming / compile conflicts.

I want to reuse as much as possible. Is there any smart way to deal with this (rather than giving each client an own node in the package structure)?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小…楫夜泊 2024-09-17 04:05:27

XMLBeans (2.x) 常见问题解答 指出了 xsdconfig 命名空间映射:

“替代文本”
注意:XMLBeans 不支持使用映射到具有相同名称和目标命名空间的模式类型/元素的两组或多组 java 类(在不同的包中),并在同一个类加载器中使用所有这些类。根据您用于 Java 类到架构类型映射的方向,某些功能可能无法正常工作。这是因为,即使 java 类的包名称不同,架构元数据(.xsb 文件)的架构位置是相同的,并且包含相应的实现 java 类,因此 JVM 将始终选取类路径上的第一个类。如果使用多个类加载器,则可以避免这种情况。

The XMLBeans (2.x) faq notes the limitations of xsdconfig namespace mapping:

alt text
Note: XMLBeans doesn’t support using two or more sets of java classes (in different packages) mapped to schema types/elements that have the same names and target namespaces, using all in the same class loader. Depending on the direction you are using for the java classes to schema types mapping, some features might not work correctly. This is because even though the package names for the java classes are different, the schema location for the schema metadata (.xsb files) is the same and contains the corresponding implementing java class, so the JVM will always pick up the first on the classpath. This can be avoided if multiple class loaders are used.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文