2009-09-29 8 views
15

Я пытаюсь добавить некоторые заголовки ответа на некоторые из моих вызовов веб-службы. Я написал свой веб-сервис с использованием CXF 2.1.2 и JAX-RS. Мне нужно вернуть объект, и я также хочу добавить некоторые заголовки в ответ. Не возвращая объект javax.ws.rs.core.Response, как добавить заголовок в ответ и все еще вернуть javabean?Добавить Response Header в JAX-RS Webservice

ответ

12

Вы можете ввести ссылку на фактический HttpServletResponse через аннотацию @Context в своем веб-сервисе и использовать addHeader() и т. Д., Чтобы добавить свой заголовок.

+0

@Heri - Я попробовал это, HttpServletResponse возвращается null. Для некоторых фона я использую Spring для моей конфигурации. Я также попытался использовать @Resource для ответа безрезультатно. Инъекция HttpServletRequest в контекст действительно работает, хотя ... – jconlin

+0

Это похоже на проблему CXF, так как это определенная функция JAX-RS, и я успешно ее попробовал в Джерси. Он должен быть исправлен в CXF давно: https://issues.apache.org/jira/browse/CXF-1498 – Heri

+0

@Heri - К сожалению, мне не удалось обновить версию CXF в этой конкретной среде, но моя проблема возникла быть привязанным к этому. В любом случае вы правы. – jconlin