Внедрение CXF JAXRS MessageContext в "in Interceptor"
Я пытаюсь ввести MessageContext в Перехватчик с Фазой как READ следующим образом
@Context
org.apache.cxf.jaxrs.ext.MessageContext.MessageContext messageContext;
Но это не инициализируется и остается нулевым. Можно ли внедрить org.apache.cxf.jaxrs.ext.MessageContext.MessageContext в перехватчик?
Спасибо
1 ответ
Вам может понадобиться добавить <aop:scoped-proxy/>
в конфигурационный файл cxf:
<jaxrs:server id="example" address="/">
<jaxrs:serviceBeans>
<bean class="org.apache.cxf.systest.jaxrs.CustomerService">
<aop:scoped-proxy />
</bean>
</jaxrs:serviceBeans>
</jaxrs:server>
Также вам нужно создать метод установки для вашего messageContext (это должно быть в вашем классе обслуживания - здесь это "org.apache.cxf.systest.jaxrs.CustomerService"):
private MessageContext messageContext;
@Context
public void setMessageContext(MessageContext messageContext) {
this.messageContext = messageContext;
}
Также рассмотрите эту ссылку на документацию:
http://cxf.apache.org/docs/jaxrs-services-configuration.html