You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Daniel Kulp (JIRA)" <ji...@apache.org> on 2010/02/16 16:45:27 UTC

[jira] Commented: (CXF-2674) @Resource not injecting WebServiceContext in jaxws intereceptor

    [ https://issues.apache.org/jira/browse/CXF-2674?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12834266#action_12834266 ] 

Daniel Kulp commented on CXF-2674:
----------------------------------


This is technically an "issue" with Spring.  The spring injection engine has a hard coded "exclude" that excludes it from injecting any @Resource things of type javax.xml.ws.WebServiceContext.    It's even mentioned in the javadoc:

http://static.springsource.org/spring/docs/2.5.x/api/org/springframework/context/annotation/CommonAnnotationBeanPostProcessor.html

We've done SOME work to try and get around it, but apparently not enough.    Can you create a small testcase?

You can get around it by doing something like:

<property name="ctx" value="org.apache.cxf.jaxws.context.WebServiceContextImpl" />

to get an instance of exactly what would be injected.   

> @Resource not injecting WebServiceContext in jaxws intereceptor
> ---------------------------------------------------------------
>
>                 Key: CXF-2674
>                 URL: https://issues.apache.org/jira/browse/CXF-2674
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2.5
>         Environment: tomcat 6.0.18, Spring 2.5, Spring Security 2.0.5, cxf-2.2.5 with wss4j-1.5.8
>            Reporter: Auke Noppe
>
> If you want to inject the WebServiceContext into a In/Out-Interceptor configured with xml (e.g. <jaxws:ininterceptors><bean id="someInterceptor" class="test.SomeInterceptor"/></jaxws:ininterceptors />) with the @resource annotation, the WebServiceContext is null. (Even with component-scan enabled and annotation-config defined)
> If you inject the WebServiceContext into the interceptor with a property-setter in the xml (e.g. <property name="ctx" value="javax.xml.ws.WebServiceContext" />) the instance is not empty, but holding nothing (like MessageContext )
> The documentation suggest the way with the @Resource annotation, so this is rather confusing.
> The work-around I found, is to set the properties I wanted to set on the message in the handleMessage method of the interceptor (e.g. message.put("someKey", someValue); )
> I would rather see the @Resource injection working.
> Regards,
> Auke Noppe
> Developer @ Ymor (.nl)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.