我们正在使用 Castor 编组/解组 xsd:s。我们使用附件并使用“swaRef”元素引用。根据这个页面 Castor 不支持这个,http ://docs.codehaus.org/display/CASTOR/Castor+JAXB :
某些功能可能需要在支持 Castor 框架中实际实现 - 例如通过 MTOM/XOP 和 swaRef 处理附件。
我们怎样才能克服这个限制?
注意: 我是EclipseLink JAXB (MOXy)负责人,也是JAXB (JSR-222)专家组的成员。
我的建议是使用标准的JAXB (JSR-222)实现来支持您需要的一切(从 XML 模式、swaref 等生成的模型),而不是实现一些使用 Castor 的变通方法。从 Java SE 6 开始,JDK/JRE 中包含了一个实现,其他实现(例如 MOXy)也可用。
笔记
根据您提供的链接, Castor 似乎没有运行JAXB (JSR-222)合规性测试,并且在该页面的“功能测试”部分中,Castor 似乎没有完全测试其对JAXB 的支持( JSR-222)注释。
功能测试
我认为应该花一点时间在功能测试上,这可能会变得很乏味。例如,查看 @XmlAttribute 注释,有很多变体需要测试,需要对每个测试用例的 POJO 进行稍微不同的注释。这将需要我们编写大量 POJO 并将它们相应地连接到测试类中。让我们看看我们是否可以就如何解决这个问题达成一致(布局、包结构……)。