2013-02-28 3 views

Répondre

2

Note: Je suis le chef de file EclipseLink JAXB (MOXy) et membre du groupe d'experts JAXB (JSR-222).

Pour les applications JAX-RS dans Apache CXF, il peut être suffisant pour ajouter un fichier jaxb.properties dans le même package que le modèle de domaine spécifiant Moxy en tant que fournisseur JAXB (JSR-222) (http://blog.bdoughan.com/2011/05/specifying-eclipselink-moxy-as-your.html) avec l'entrée suivante:

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

C'est tout ce qui est nécessaire lors de la création d'une application JAX-RS en utilisant Jersey.

Il me semble que Apache CXF utilise classe org.apache.cxf.databinding.JAXBDataBinding comme le principal moyen de permettre des remplacements potentiels. J'ai vu votre solution intitulée "Spécification d'EclipseLink MOXy en tant que votre fournisseur JAXB". Il semble que si je comprends bien, que je devrais mettre ce fichier de propriétés dans chaque paquet qui a une classe JAXB. Est-ce une supposition correcte?

Le fichier jaxb.propertie doit être dans au moins l'un des paquets utilisés pour créer le JAXBContext.

En venant à EclipseLink 2.5

similaires à la classe MOXyJsonProvider nous avons ajouté EclipseLink 2.4 pour le rendre facile à configurer Moxy comme fournisseur de JSON (voir: http://blog.bdoughan.com/2012/05/moxy-as-your-jax-rs-json-provider.html), dans EclipseLink 2.5, nous ajoutons MOXyXmlProvider faire il est facile d'utiliser MOXy comme fournisseur XML dans des environnements où l'ajout du fichier jaxb.properties ne fonctionne pas.