cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kaustuv Maji <kaustuv.m...@gmail.com>
Subject Re: How to inject spring bean to CXFServlet extented class
Date Tue, 23 Dec 2014 05:44:05 GMT
Hello,

can you try following two steps i hope it will resolve problem.
add <context:component-scan base-package="<package name>" /> in
beans.xml this entry will scan/read all the stareo type af annotations from
the java classes .

add @Component at class level.

Thanks and regards
Kaustuv Maji

On Tue Dec 23 2014 at 10:40:26 AM virajn <mayuraviraj@gmail.com> wrote:

> I have a rest web service. In that at webservice start i have to start few
> other services. I decided to extend the
> org.apache.cxf.transport.servlet.CXFServlet class and in that initiate
> those
> services. So far i have extended the class and it's working now.
>
> How can i inject spring bean to this extended class
>
> my servlet
>
> public class RestUIServlet extends CXFServlet {
>
>    @Autowired
>    private Util util; // Problem is to inject this.
>
>    public RestUIServlet() {
>         super();
>        //TODO : Initialize service here
>    }
> }
>
> My web.xml
>
> <context-param>
>     <param-name>contextConfigLocation</param-name>
>     <param-value>WEB-INF/beans.xml</param-value>
> </context-param>
> <listener>
>     <listener-class>
>         org.springframework.web.context.ContextLoaderListener
>     </listener-class>
> </listener>
> <servlet>
>     <servlet-name>CXFServlet</servlet-name>
>     <servlet-class>
>         test.RestUIServlet
>     </servlet-class>
>     <load-on-startup>1</load-on-startup>
> </servlet>
> <servlet-mapping>
>     <servlet-name>CXFServlet</servlet-name>
>     <url-pattern>/*</url-pattern>
> </servlet-mapping>
>
> My beans.xml
> <import resource="classpath:META-INF/cxf/cxf.xml"/>
> <import resource="classpath:spring/springContext.xml"/>
> <context:property-placeholder/>
> <context:annotation-config/>
> <bean
> class="org.springframework.context.support.PropertySourcesPlaceholderConf
> igurer"/>
> <bean
> class="org.springframework.beans.factory.config.
> PreferencesPlaceholderConfigurer"/>
>
> <jaxrs:server id="services" address="/">
>     <jaxrs:serviceBeans>
>         <ref bean="uiServiceImpl"/>
>     </jaxrs:serviceBeans>
>     <jaxrs:providers>
>         <bean class="org.codehaus.jackson.jaxrs.JacksonJsonProvider"/>
>     </jaxrs:providers>
> </jaxrs:server>
>
> <bean id="uiServiceImpl" class="test.UIServiceImpl"/>
>
> I'm using cxf 3.0.0
>
>
>
> --
> View this message in context: http://cxf.547215.n5.nabble.
> com/How-to-inject-spring-bean-to-CXFServlet-extented-class-tp5752665.html
> Sent from the cxf-user mailing list archive at Nabble.com.
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message