代码之家  ›  专栏  ›  技术社区  ›  Stefan Hendriks

处理具有多个WSDL的共享名称空间(xmlbeans)

  •  2
  • Stefan Hendriks  · 技术社区  · 14 年前

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

    一旦我尝试在一个项目中使用所有JAR文件,就会出现命名/编译冲突。

    我想尽量重复使用。有没有什么聪明的方法来处理这个问题(而不是在包结构中给每个客户机一个自己的节点)?

    1 回复  |  直到 14 年前
        1
  •  2
  •   Glorfindel DataWraith    5 年前

    XMLBeans(2.x) faq 注意到 xsdconfig 命名空间映射:

    alt text 注意:XMLBeans不支持使用两个或多个java类集(在不同的包中)映射到具有相同名称和目标名称空间的模式类型/元素,使用同一类加载器中的all。根据java类到模式类型映射所使用的方向,某些功能可能无法正常工作。这是因为尽管java类的包名不同,但是schema元数据(.xsb文件)的schema位置是相同的,并且包含相应的实现java类,因此JVM总是在类路径上选择第一个。如果使用多个类装入器,则可以避免这种情况。