2013-02-28 64 views

回答

2

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

对于阿帕奇CXF的JAX-RS应用中足以在同一个包添加jaxb.properties文件作为你的域模型指定莫西为JAXB (JSR-222)提供商(http://blog.bdoughan.com/2011/05/specifying-eclipselink-moxy-as-your.html)具有以下条目:

javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory 

这是使用Jersey创建JAX-RS应用程序时所需的全部内容。

在我看来,Apache的CXF使用 org.apache.cxf.databinding.JAXBDataBinding类作为主要手段让潜在覆盖的 。我看到您的解决方案名为 “将EclipseLink MOXy指定为您的JAXB提供程序”。看来如果我对 的理解是正确的,那么我可能必须将这个属性文件放在每个包含JAXB类的包中,即 。这是一个正确的假设吗?

jaxb.propertie文件需要位于至少一个用于创建JAXBContext的包中。

即将在EclipseLink的2.5

到我们的EclipseLink 2.4加入到可以很容易地莫西配置为您的JSON提供了MOXyJsonProvider类相似(见:http://blog.bdoughan.com/2012/05/moxy-as-your-jax-rs-json-provider.html),在的EclipseLink 2.5,我们加入MOXyXmlProvider使在简单地添加jaxb.properties文件的环境下,使用MOXy作为XML提供程序很困难。