2013-07-05 2 views
2

J'essaie d'obtenir une instance de HttpServletRequest dans mon MessageBodyWriter personnalisé. J'utilise actuellement une variable membre annotée avec @Context. Cependant, lorsqu'une requête utilise d'abord l'écrivain - Jersey jette "java.lang.IllegalStateException: Pas dans une portée de requête.". Pour autant que je sache, Jersey essayait toujours d'instancier l'écrivain.Impossible d'accéder à HttpServletRequest dans un MessageBodyWriter personnalisé

En fait, j'ai commenté chaque utilisation de la variable de demande - je le déclare simplement. J'essaie de réaliser quelque chose de semblable à this

J'utilise Jersey 2 sur GAE sdk - Il semble que ce soit un bug, est-ce que quelqu'un a une solution de contournement?

Merci.

+0

Veuillez mettre à jour la question avec le code source pour fournir plus d'informations. – unwichtich

+0

@unwichtich, je suis passé à Resteasy, donc je n'ai plus le code exact. Cependant, j'ai fourni un lien vers un fichier java qui est presque exactement le même. En fait, mon code était beaucoup plus simple car j'ai finalement commenté chaque utilisation de la requête et des variables de réponse (je les déclarais simplement). – OBelloc

Répondre

0

Pour Googlers, il est possible que c'était lié à ce bogue de Jersey, qui a été marqué résolu:

https://java.net/jira/browse/JERSEY-2355

J'ai eu ce problème et, après avoir trouvé d'abord cette question et ce bug, mettre à jour mon La version de Jersey l'a fixée.

+0

Le lien est cassé. – Stephan

+0

J'ai fait quelques recherches sur Google, mais ce lien semble être tombé à la périphérie d'Internet dans l'expérience utilisateur Oracle. –

Questions connexes