J'essaie d'ajouter des en-têtes de réponse à certains de mes appels de service Web. J'ai écrit mon webservice en utilisant CXF 2.1.2 et JAX-RS. Je dois retourner un objet et je veux aussi ajouter quelques en-têtes à la réponse. Sans retourner un objet javax.ws.rs.core.Response, comment ajouter un en-tête à la réponse et renvoyer mon javabean?Ajouter un en-tête de réponse au service Web JAX-RS
15
A
Répondre
12
Vous pouvez injecter une référence à la HttpServletResponse réelle via l'annotation @Context dans votre service Web et utiliser addHeader() etc. pour ajouter votre en-tête.
@Heri - J'ai essayé, HttpServletResponse revient à zéro. Pour certains background j'utilise Spring pour ma configuration. J'ai également essayé d'utiliser @Resource pour la réponse en vain. L'injection de HttpServletRequest dans le contexte fonctionne bien ... – jconlin
Cela ressemble à un problème CXF, car c'est une fonctionnalité spécifique de JAX-RS et je l'ai essayé avec succès dans Jersey. Il devrait être fixé dans CXF il y a longtemps: https://issues.apache.org/jira/browse/CXF-1498 – Heri
@Heri - Malheureusement, je n'ai pas pu mettre à jour la version de CXF dans cet environnement particulier, mais mon problème est apparu être lié à cela. De toute façon vous avez raison. – jconlin