我有两组生成的Java类(每组都有对应的ObjectFactory),我想将它们合并为一组以同时使用。

是否可以在JAXB中使用两个ObjectFactories(两个类标记为@XmlRegistry)?

类是由

maven-jaxb2-plugin(版本0.8.3)

JDK:1.6.0_43

提前致谢!

最佳答案

使用两个ObjectFactory

是的,您可以使用多个ObjectFactory类。在您的代码中,您将需要打包至少一个引用。用@XmlRegistry注释的类不必称为ObjectFactory,但是JAXB从XML Schema生成的类总是这样。

JAXB可以合并ObjectFactory类吗

否,原因如下:


它引入了可能的方法名称冲突,然后JAXB必须为其提供冲突解决机制。
在一个或多个程序包名称上创建JAXBContext时,它将在该程序包中查找ObjectFactory类以从中导出元数据。减少ObjectFactory类的数量可以解决这个问题。
最终,它不会使您的代码更容易。


您可以手动合并它们吗

是。您只需要注意,如果要通过包名称创建JAXBContext,则会拾取您的ObjectFactory

关于java - 尝试使用JAXB时,对象工厂可能很少吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24674778/

10-11 02:22