Always a good idea to indicate what version of cxf you are on for this kind
of error.




On Wed, Aug 14, 2013 at 2:39 AM, Gaetano Ciotola
<[email protected]>wrote:

> Hello everyone,
> I have developed dummy web service using CXF - jax-rs.
> I have deployed on WebSphere 7. Everything works fine.
>
> My problem starts when  I try to integrate this web service in an existing
> application.
> I have the following exception when I start up the application...I have
> spend many hours looking at it  but currently I'm stuck...any help would be
> highly appreciated.
> Below  my web.xml and spring config file
>
> Thank and Regards
> Gaetano
>
>
> 8/13/13 18:18:38:204 CEST] 0000000d servlet       E
> com.ibm.ws.webcontainer.servlet.ServletWrapper init SRVE0100E: Uncaught
> init() exception created by servlet CXFServlet in application MY Enterprise
> Application:
> org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean
> named 'cxf' is defined
> at
>
> org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:521)
> at
>
> org.springframework.beans.factory.support.AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1068)
> at
>
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:274)
> at
>
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
> at
>
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:266)
> at
>
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
> at
>
> org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1079)
> at org.apache.cxf.transport.servlet.CXFServlet.loadBus(CXFServlet.java:77)
> at
>
> org.apache.cxf.transport.servlet.CXFNonSpringServlet.init(CXFNonSpringServlet.java:71)
> at
>
> com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:358)
> at
>
> com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.init(ServletWrapperImpl.java:169)
> at
>
> com.ibm.ws.webcontainer.servlet.ServletWrapper.initialize(ServletWrapper.java:1809)
> at
>
> com.ibm.wsspi.webcontainer.extension.WebExtensionProcessor.createServletWrapper(WebExtensionProcessor.java:98)
> at
> com.ibm.ws.webcontainer.webapp.WebApp.getServletWrapper(WebApp.java:1037)
> at com.ibm.ws.webcontainer.webapp.WebApp.getServletWrapper(WebApp.java:958)
> at
>
> com.ibm.ws.webcontainer.webapp.WebApp.initializeTargetMappings(WebApp.java:637)
> at
>
> com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinally(WebApp.java:435)
> at
> com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:304)
> at
>
> com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:100)
> at
>
> com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:166)
> at
> com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:731)
> at
>
> com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:616)
> at
>
> com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:376)
> at
>
> com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:668)
> at
>
> com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1123)
> at
>
> com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1319)
> at
>
> com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:610)
> at
>
> com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:944)
> at
>
> com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:726)
> at
>
> com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2048)
> at
>
> com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:441)
> at
>
> com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:123)
> at
>
> com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:384)
> at
>
> com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access$300(CompositionUnitMgrImpl.java:112)
> at
>
> com.ibm.ws.runtime.component.CompositionUnitMgrImpl$CUInitializer.run(CompositionUnitMgrImpl.java:951)
> at
>
> com.ibm.wsspi.runtime.component.WsComponentImpl$_AsynchInitializer.run(WsComponentImpl.java:349)
> at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1604)
>
> [8/13/13 18:18:38:210 CEST] 0000000d extension     E
> com.ibm.wsspi.webcontainer.extension.WebExtensionProcessor
> createServletWrapper Error occured while preparing the servlet for
> initialization.
>                                  javax.servlet.ServletException: SRVE0207E:
> Uncaught initialization exception created by servlet
> at
>
> com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:434)
> at
>
> com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.init(ServletWrapperImpl.java:169)
> at
>
> com.ibm.ws.webcontainer.servlet.ServletWrapper.initialize(ServletWrapper.java:1809)
> at
>
> com.ibm.wsspi.webcontainer.extension.WebExtensionProcessor.createServletWrapper(WebExtensionProcessor.java:98)
> at
> com.ibm.ws.webcontainer.webapp.WebApp.getServletWrapper(WebApp.java:1037)
> at com.ibm.ws.webcontainer.webapp.WebApp.getServletWrapper(WebApp.java:958)
> at
>
> com.ibm.ws.webcontainer.webapp.WebApp.initializeTargetMappings(WebApp.java:637)
> at
>
> com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinally(WebApp.java:435)
> at
> com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:304)
> at
>
> com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:100)
> at
>
> com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:166)
> at
> com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:731)
> at
>
> com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:616)
> at
>
> com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:376)
> at
>
> com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:668)
> at
>
> com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1123)
> at
>
> com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1319)
> at
>
> com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:610)
> at
>
> com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:944)
> at
>
> com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:726)
> at
>
> com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2048)
> at
>
> com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:441)
> at
>
> com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:123)
> at
>
> com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:384)
> at
>
> com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access$300(CompositionUnitMgrImpl.java:112)
> at
>
> com.ibm.ws.runtime.component.CompositionUnitMgrImpl$CUInitializer.run(CompositionUnitMgrImpl.java:951)
> at
>
> com.ibm.wsspi.runtime.component.WsComponentImpl$_AsynchInitializer.run(WsComponentImpl.java:349)
> at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1604)
> Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException:
> No bean named 'cxf' is defined
> at
>
> org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:521)
> at
>
> org.springframework.beans.factory.support.AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1068)
> at
>
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:274)
> at
>
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
> at
>
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:266)
> at
>
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
> at
>
> org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1079)
> at org.apache.cxf.transport.servlet.CXFServlet.loadBus(CXFServlet.java:77)
> at
>
> org.apache.cxf.transport.servlet.CXFNonSpringServlet.init(CXFNonSpringServlet.java:71)
> at
>
> com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:358)
> ... 27 more
>
>
> here is the relevant fragment of the web.xml
>
> <context-param>
> <description>Global Spring Application Context Configuration</description>
> <param-name>contextConfigLocation</param-name>
> <param-value>
>         </param-value>
> </context-param>
>
> <listener>
>
> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
> </listener>
>
>   <servlet>
>         <servlet-name>CXFServlet</servlet-name>
>
> <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
>
>         <init-param>
>         <param-name>contextConfigLocation</param-name>
>         <param-value>WEB-INF/paymentService.xml</param-value>
>         </init-param>
>         <load-on-startup>1</load-on-startup>
>     </servlet>
>
>     <servlet-mapping>
>         <servlet-name>CXFServlet</servlet-name>
>         <url-pattern>/*</url-pattern>
>     </servlet-mapping>
>
>
>
> this is spring config file: paymentService.xml
>
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns="http://www.springframework.org/schema/beans";
>     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>     xmlns:jaxrs="http://cxf.apache.org/jaxrs";
> xmlns:util="http://www.springframework.org/schema/util";
>     xsi:schemaLocation="
> http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans.xsd
> http://www.springframework.org/schema/util
> http://www.springframework.org/schema/util/spring-util.xsd
> http://cxf.apache.org/jaxrs
> http://cxf.apache.org/schemas/jaxrs.xsd";>
>
>
>         <import resource="classpath:META-INF/cxf/cxf.xml" />
> <import resource="classpath:META-INF/cxf/cxf-extension-xml.xml"/>
> <import resource="classpath:META-INF/cxf/cxf-servlet.xml"/>
>
>     <bean id="paymentService" class="com.xxx.services.PymtServiceImpl"/>
>
> <util:list id="theSchemas">
>   <value>classpath:xsd/paymentAuthorisationReq.xsd</value>
> </util:list>
>     <bean id="schemaHolder"
> class="org.apache.cxf.jaxrs.utils.schemas.SchemaHandler">
>     <property name="schemas" ref="theSchemas"/>
> </bean>
>
> <bean id="payloadChecker" class="com.xxx.utils.PayloadChecker"/>
>
>     <jaxrs:server id="paymentServiceServer" address="/1.0.0.0">
>         <jaxrs:serviceBeans>
>             <ref bean="paymentService" />
>         </jaxrs:serviceBeans>
>         <jaxrs:providers>
>         <bean class="org.apache.cxf.jaxrs.provider.json.JSONProvider">
>          <property name="dropRootElement" value="true"/>
>          <property name="supportUnwrapped" value="true"/>
>          <property name="schemaHandler" ref="schemaHolder"/>
>          <property name="serializeAsArray" value="true"/>
>          <property name="arrayKeys" value="true"/>
>         </bean>
>         <ref bean="payloadChecker"/>
>         </jaxrs:providers>
>     </jaxrs:server>
> </beans>
>

Reply via email to