When using a Context listener to load the spring context, you have to include the cxf specific stuff into the beans.xml. In your case, you probably need META-INF/cxf/cxf.xml, META-INF/cxf/cxf-extension-soap.xml, and META-INF/cxf/cxf-servlet.xml.
Dan On Wednesday 01 October 2008, vkmohan wrote: > Trying to upgrade from 2.1.1.SNAPSHOT to 2.1.2 version of CXF. My > service is working fine currently on 2.1.1.SNAPSHOT. > > After migration my service is failing to deploy with the error > org.springframework.beans.factory.NoSuchBeanDefinitionException: No > bean named 'org.apache.cxf.bus.CXFBusImpl' is defined > > Attached my web.xml, spring bean configuration file beans.xml and the > Error message with stack trace. Changed the names to protect company > information. > > Appreciate any help in resolving the issue. We would like to migrate > to newer versions of cxf to keep current. > > > web.xml > ------ > > <?xml version="1.0" encoding="UTF-8"?> > <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee > http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> > <description>XXXXXXXX</description> > <display-name>XXXXXXX</display-name> > <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> > <display-name>XXXXX</display-name> > <servlet-name>XXXXX</servlet-name> > <servlet-class> > org.apache.cxf.transport.servlet.CXFServlet > </servlet-class> > <load-on-startup>1</load-on-startup> > </servlet> > <servlet-mapping> > <servlet-name>XXXXX</servlet-name> > <url-pattern>/services/*</url-pattern> > </servlet-mapping> > <session-config> > <session-timeout>60</session-timeout> > </session-config> > </web-app> > > beans.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:jaxws="http://cxf.apache.org/jaxws" > xmlns:jms="http://cxf.apache.org/transports/jms" > xmlns:soap="http://cxf.apache.org/bindings/soap" > xsi:schemaLocation=" > http://www.springframework.org/schema/beans > http://www.springframework.org/schema/beans/spring-beans-2.0.xsd > http://cxf.apache.org/bindings/soap > http://cxf.apache.org/schemas/configuration/soap.xsd > http://cxf.apache.org/jaxws > http://cxf.apache.org/schemas/jaxws.xsd > http://cxf.apache.org/transports/jms > http://cxf.apache.org/schemas/configuration/jms.xsd"> > > <jaxws:endpoint > id="AlarmRetrievalSoapHttp" > implementor="com.XXXXXX.AlarmRetrievalSoapHttpImpl" > wsdlLocation="WEB-INF/XXXX/AlarmRetrievalHttp.wsdl" > address="/AlarmRetrievalSoapHttp" > bus="org.apache.cxf.bus.CXFBusImpl"> > <jaxws:features> > <bean class="org.apache.cxf.feature.LoggingFeature"/> > </jaxws:features> > </jaxws:endpoint> > <jaxws:endpoint > id="ManagedElementRetrievalSoapHttp" > implementor="com.XXXXXX.ManagedElementRetrievalRPCHttpImpl" > > wsdlLocation="WEB-INF/XXXXXXX/ManagedElementRetrievalHttp.wsdl" > address="/ManagedElementRetrievalSoapHttp" > bus="org.apache.cxf.bus.CXFBusImpl"> > <jaxws:features> > <bean class="org.apache.cxf.feature.LoggingFeature"/> > </jaxws:features> > </jaxws:endpoint> > </beans> > > ERROR > ---- > > [#|2008-10-01T16:55:17.810-0700|SEVERE|sun-appserver9.1|org.springfram >ework.web.context.ContextLoader|_ThreadID=14;_ThreadName=Timer-5;_Reque >stID=c892b131-0444-408e-bf5b-d98bbcc2878a;|Context initialization > failed > org.springframework.beans.factory.BeanCreationException: Error > creating bean with name 'AlarmRetrievalSoapHttp': Cannot resolve > reference to bean 'org.apache.cxf.bus.CXFBusImpl' while setting > constructor argument with index 0; nested exception is > org.springframework.beans.factory.NoSuchBeanDefinitionException: No > bean named 'org.apache.cxf.bus.CXFBusImpl' is defined > Caused by: > org.springframework.beans.factory.NoSuchBeanDefinitionException: No > bean named 'org.apache.cxf.bus.CXFBusImpl' is defined > at > org.springframework.beans.factory.support.DefaultListableBeanFactory.g >etBeanDefinition(DefaultListableBeanFactory.java:360) at > org.springframework.beans.factory.support.AbstractBeanFactory.getMerge >dBeanDefinition(AbstractBeanFactory.java:914) at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean( >AbstractBeanFactory.java:241) at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean( >AbstractBeanFactory.java:160) at > org.springframework.beans.factory.support.BeanDefinitionValueResolver. >resolveReference(BeanDefinitionValueResolver.java:267) at > org.springframework.beans.factory.support.BeanDefinitionValueResolver. >resolveValueIfNecessary(BeanDefinitionValueResolver.java:110) at > org.springframework.beans.factory.support.ConstructorResolver.resolveC >onstructorArguments(ConstructorResolver.java:385) at > org.springframework.beans.factory.support.ConstructorResolver.autowire >Constructor(ConstructorResolver.java:121) at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF >actory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:800) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF >actory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:718) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF >actory.createBean(AbstractAutowireCapableBeanFactory.java:386) at > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObj >ect(AbstractBeanFactory.java:249) at > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry >.getSingleton(DefaultSingletonBeanRegistry.java:155) at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean( >AbstractBeanFactory.java:246) at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean( >AbstractBeanFactory.java:160) at > org.springframework.beans.factory.support.DefaultListableBeanFactory.p >reInstantiateSingletons(DefaultListableBeanFactory.java:291) at > org.springframework.context.support.AbstractApplicationContext.refresh >(AbstractApplicationContext.java:352) at > org.springframework.web.context.ContextLoader.createWebApplicationCont >ext(ContextLoader.java:246) at > org.springframework.web.context.ContextLoader.initWebApplicationContex >t(ContextLoader.java:189) at > org.springframework.web.context.ContextLoaderListener.contextInitializ >ed(ContextLoaderListener.java:49) at > org.apache.catalina.core.StandardContext.listenerStart(StandardContext >.java:4515) at > org.apache.catalina.core.StandardContext.start(StandardContext.java:51 >76) at com.sun.enterprise.web.WebModule.start(WebModule.java:327) at > org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase. >java:973) at > org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:957 >) at > org.apache.catalina.core.StandardHost.addChild(StandardHost.java:688) > at > com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:15 >81) at > com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:12 >22) at > com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed( >WebModuleDeployEventListener.java:182) at > com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed( >WebModuleDeployEventListener.java:278) at > com.sun.enterprise.admin.event.AdminEventMulticaster.invokeModuleDeplo >yEventListener(AdminEventMulticaster.java:974) at > com.sun.enterprise.admin.event.AdminEventMulticaster.handleModuleDeplo >yEvent(AdminEventMulticaster.java:961) at > com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(Admi >nEventMulticaster.java:464) at > com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(Ad >minEventMulticaster.java:176) at > com.sun.enterprise.admin.server.core.DeploymentNotificationHelper.mult >icastEvent(DeploymentNotificationHelper.java:308) at > com.sun.enterprise.deployment.phasing.DeploymentServiceUtils.multicast >Event(DeploymentServiceUtils.java:226) at > com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStart >Event(ServerDeploymentTarget.java:298) at > com.sun.enterprise.deployment.phasing.ApplicationStartPhase.runPhase(A >pplicationStartPhase.java:132) at > com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(Dep >loymentPhase.java:108) at > com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhase >s(PEDeploymentService.java:919) at > com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDep >loymentService.java:276) at > com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDep >loymentService.java:294) at > com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.deploy(Applica >tionsConfigMBean.java:555) at > sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j >ava:39) at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess >orImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) > at > com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper >.java:375) at > com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper >.java:358) at > com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean >.java:464) at > com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMB >eanServerInterceptor.java:836) at > com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761) > at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source) at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess >orImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) > at > com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java: >90) at $Proxy1.invoke(Unknown Source) > at > com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(Suno >neInterceptor.java:304) at > com.sun.enterprise.interceptor.DynamicInterceptor.invoke(DynamicInterc >eptor.java:174) at > com.sun.enterprise.deployment.autodeploy.AutoDeployer.invokeDeployment >Service(AutoDeployer.java:564) at > com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployJavaEEArch >ive(AutoDeployer.java:545) at > com.sun.enterprise.deployment.autodeploy.AutoDeployer.deploy(AutoDeplo >yer.java:492) at > com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployAll(AutoDe >ployer.java:267) at > com.sun.enterprise.deployment.autodeploy.AutoDeployControllerImpl$Auto >DeployTask.run(AutoDeployControllerImpl.java:374) at > java.util.TimerThread.mainLoop(Timer.java:512) > at java.util.TimerThread.run(Timer.java:462) > > |#] -- J. Daniel Kulp Principal Engineer, IONA [EMAIL PROTECTED] http://www.dankulp.com/blog
