【发布时间】:2014-01-22 05:44:08
【问题描述】:
我在我的项目中使用了几种不同的模式。它们每个都被编译成一个单独的 jar,每个都使用一个单独的包,使用 xmlbeans ant 任务。我似乎只能成功解析类路径中第一个模式 jar 的 xml(使用 .Factory.parse(String xml) 方法),否则我会得到一个 ClassCastException,如此错误中所述。如果我更改 jar 顺序,将能够成功解析不同的架构,并且将为不同的类抛出 ClassCastException。
我已经进行了一些调试,我得出的结论是 schemaorg_apache_xmlbeans.namespace 包的结构可能是负责任的。由于我的模式没有命名空间,因此我构建的每个 jar 共享一些在相同包中具有相同名称的文件。具体来说,我看到每个 jar 都有一个 schemaorg_apache_xmlbeans.namespace._nons.xmlns.xsb 文件,该文件似乎指向该 jar 的实际架构。如果工厂使用此文件来确定它将用于解析其拥有的 xml 的某些类,这可能会解释 ClassCastException,因为它只查看类路径上的第一个文件,而不是它的 XML 的正确文件有。
是否有任何选项可以为 wsdls 或 xsds 或 ant 任务“wsdl to java”编译中生成的模式(如 java 命名空间)指定命名空间?
【问题讨论】:
-
请帮我解决这个问题。我急需。提前谢谢!!!!
-
请就此提出建议
标签: java web-services axis2 wsdl2java xmlbeans