Un service JAX-WS défini à l'aide de @WebService
et @WebMethod
utilise JAXB pour transformer le code XML en objet Java. Pour la plupart des cas d'utilisation, c'est génial!Est-il possible d'accéder à la requête brute XML dans JAX-WS sans utiliser @WebServiceProvider?
Cependant, j'ai besoin de m'interfacer avec du code hérité écrit en utilisant Axis 1 qui fonctionne exclusivement sur org.w3c.dom.Element
objets - en d'autres termes, je devrais juste transformer les paramètres directement en XML dès que je les ai, ce qui semble horriblement inefficace. Par conséquent, je cherchais un moyen de recevoir et de renvoyer du code XML brut à partir d'un service JAX-WS, que ce soit sous la forme d'une chaîne ou en tant qu'objets.
Je suis en mesure d'obtenir la fonctionnalité dont j'ai besoin à l'aide @WebServiceProvider
et mettre en œuvre l'interface Provider<Source>
, mais cela se sent un peu trop bas niveau pour le genre de chose que je fais - je ne peux pas utiliser @WebMethod
à configurer facilement le routage; Au lieu de cela, je dois obtenir le PATH_INFO
de WebServiceContext
et jouer avec la chaîne pour obtenir les informations dont j'ai besoin. Donc, ma question est, y a-t-il un moyen d'utiliser le XML brut (découper JAXB) dans un service JAX-WS sans tomber au niveau @WebServiceProvider
?