jaxb - 使用哪个 JAXB 实现?

标签 jaxb apache-camel moxy

我一直在使用 Oracle JDK 1.7 附带的默认 Sun JAXB 实现。 不幸的是,我需要使用某些相当复杂的 XSD 模式,并且我遇到了 XSD 到 Java 引擎中的一个错误(如 this SO post 中所述)。

看来只有一种解决方法是可能的,更糟糕​​的是我还无法在我的个人案例中应用特定的解决方法。然而,更令人不安的是,对于我认为非常基本的情况(一个 XSD 架构引用另一个 XSD 架构中定义的元素),应该需要一种解决方法。

我至少知道另外两个 JAXB 实现:

有人可以深入了解它们之间以及与 Sun 的 JAXB 之间的比较吗?

最佳答案

注意:我是EclipseLink JAXB (MOXy) JAXB (JSR-222) 的领导者和成员专家组。

  • Apache Camel - 我相信 Apache Camel 只是利用 JAXB,而不是 JAXB (JSR-222) 实现本身。
  • EclipseLink MOXy - 切换到 MOXy 有很多重要原因( XPath based mapping 、 e xternal mapping metadataJSON-binding 等)。但 MOXy 使用 JAXB 引用实现中的 XML Schema to Java Compiler (XJC) 工具,因此它无法修复此用例。

关于jaxb - 使用哪个 JAXB 实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16843327/

相关文章:

java - 如何使用多个 CXF 端点来调用 Camel 中的 Web 服务?

java - Jaxb2Marshaller 模式验证似乎不起作用

java - JAXB-REST 无法获取扩展类对象

java - Apache Camel DynamicRouter - 从 bean 方法返回 null 后仍然路由

java - 在处理过程中删除文件时 Apache Camel 路由挂起

java - 将 XML 映射到与 XML 结构不匹配的 Java 对象

java - 使用包含 CDATA 的 XML 配置 MOXy 的 @XmlPath

java - JAXB 没有按预期编码

java - JAXB 解码适用于 Java 1.8,但在 Java 1.7 中返回空值