Hi,

Cxf bus refactor a lot since cxf 2.4.0.
In your spring configuration
<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
is unnecessary
and you need change
<bean id="cxf" class="org.apache.cxf.bus.CXFBusImpl" />
to something like
<cxf:bus/>

Freeman



On 2011-6-24, at 上午12:44, Sonam Nepali wrote:

Hello,

I upgraded Apache CXF maven dependency from 2.2.9 to 2.4.1 version. I am exposing a HelloWorld webservice and was able to get the spring context loaded with 2.2.9 version but after upgrading to 2.4.1 version I can't get the spring context to load. My configuration for exposing the webservice is as following:

     <import resource="classpath:META-INF/cxf/cxf.xml" />
<import resource="classpath:META-INF/cxf/cxf-extension- soap.xml" />
     <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />

     <bean id="cxf" class="org.apache.cxf.bus.CXFBusImpl" />

     <bean id="helloWorld" class="x.y.HelloWorld"/>
<jaxws:endpoint id="helloWorldEp" implementor="x.y.HelloWorld" address="/hello"/>


But I am getting the following error with Apache CXF 2.4.1 version:


2011-06-23 10:35:42,399 [[STANDBY] ExecuteThread: '4' for queue: 'weblogic.kernel.Default (self-tuning)'] ERROR org.springframework.web.context.ContextLoader - Context initialization failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'helloWorldEp': Invocation of init method failed; nested exception is javax.xml.ws.WebServiceException: java.lang.NullPointerException at org .springframework .beans .factory .support .AbstractAutowireCapableBeanFactory .initializeBean(AbstractAutowireCapableBeanFactory.java:1420) at org .springframework .beans .factory .support .AbstractAutowireCapableBeanFactory .doCreateBean(AbstractAutowireCapableBeanFactory.java:519) at org .springframework .beans .factory .support .AbstractAutowireCapableBeanFactory .createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory $1.getObject(AbstractBeanFactory.java:291) at org .springframework .beans .factory .support .DefaultSingletonBeanRegistry .getSingleton(DefaultSingletonBeanRegistry.java:222) at org .springframework .beans .factory .support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org .springframework .beans .factory .support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org .springframework .beans .factory .support .DefaultListableBeanFactory .preInstantiateSingletons(DefaultListableBeanFactory.java:580) at org .springframework .context .support .AbstractApplicationContext .finishBeanFactoryInitialization(AbstractApplicationContext.java:895) at org .springframework .context .support .AbstractApplicationContext.refresh(AbstractApplicationContext.java: 425) at org.springframework.web.context.ContextLoader.createWebApplicationContext (ContextLoader.java:276) at org.springframework.web.context.ContextLoader.initWebApplicationContext (ContextLoader.java:197) at org.springframework.web.context.ContextLoaderListener.contextInitialized (ContextLoaderListener.java:47) at weblogic.servlet.internal.EventsManager $FireContextListenerAction.run(EventsManager.java:465) at weblogic .security .acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(Unknown Source) at weblogic .servlet .internal.EventsManager.notifyContextCreatedEvent(EventsManager.java: 175) at weblogic .servlet .internal .WebAppServletContext.preloadResources(WebAppServletContext.java:1784) at weblogic .servlet .internal.WebAppServletContext.start(WebAppServletContext.java:2999) at weblogic .servlet.internal.WebAppModule.startContexts(WebAppModule.java:1371) at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:468) at weblogic.application.internal.flow.ModuleStateDriver $3.next(ModuleStateDriver.java:204) at weblogic .application .utils.StateMachineDriver.nextState(StateMachineDriver.java:37) at weblogic .application .internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60) at weblogic .application .internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200) at weblogic .application .internal .flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:117) at weblogic.application.internal.flow.ModuleStateDriver $3.next(ModuleStateDriver.java:204) at weblogic .application .utils.StateMachineDriver.nextState(StateMachineDriver.java:37) at weblogic .application .internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60) at weblogic .application .internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27) at weblogic.application.internal.BaseDeployment $2.next(BaseDeployment.java:635) at weblogic .application .utils.StateMachineDriver.nextState(StateMachineDriver.java:37) at weblogic .application.internal.BaseDeployment.activate(BaseDeployment.java:212) at weblogic .application .internal .SingleModuleDeployment.activate(SingleModuleDeployment.java:16) at weblogic .application .internal .DeploymentStateChecker.activate(DeploymentStateChecker.java:162) at weblogic .deploy .internal .targetserver.AppContainerInvoker.activate(AppContainerInvoker.java: 79) at weblogic .deploy .internal .targetserver .operations.AbstractOperation.activate(AbstractOperation.java:569) at weblogic .deploy .internal .targetserver .operations .ActivateOperation.activateDeployment(ActivateOperation.java:140) at weblogic .deploy .internal .targetserver .operations.ActivateOperation.doCommit(ActivateOperation.java:106) at weblogic .deploy .internal .targetserver .operations.AbstractOperation.commit(AbstractOperation.java:323) at weblogic .deploy .internal .targetserver .DeploymentManager.handleDeploymentCommit(DeploymentManager.java:820) at weblogic .deploy .internal .targetserver .DeploymentManager.activateDeploymentList(DeploymentManager.java:1227) at weblogic .deploy .internal .targetserver.DeploymentManager.handleCommit(DeploymentManager.java: 436) at weblogic .deploy .internal .targetserver .DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java: 163) at weblogic .deploy .service .internal .targetserver .DeploymentReceiverCallbackDeliverer .doCommitCallback(DeploymentReceiverCallbackDeliverer.java:181) at weblogic .deploy .service .internal.targetserver.DeploymentReceiverCallbackDeliverer.access $100(DeploymentReceiverCallbackDeliverer.java:12) at weblogic .deploy .service.internal.targetserver.DeploymentReceiverCallbackDeliverer $2.run(DeploymentReceiverCallbackDeliverer.java:67) at weblogic.work.SelfTuningWorkManagerImpl $WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201) at weblogic.work.ExecuteThread.run(ExecuteThread.java: 173) Caused by: javax.xml.ws.WebServiceException: java.lang.NullPointerException at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:350) at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:239) at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:509) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun .reflect .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun .reflect .DelegatingMethodAccessorImpl .invoke(DelegatingMethodAccessorImpl.java:25)
               at java.lang.reflect.Method.invoke(Method.java:597)
at org .springframework .beans .factory .support .AbstractAutowireCapableBeanFactory .invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1544) at org .springframework .beans .factory .support .AbstractAutowireCapableBeanFactory .invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1485) at org .springframework .beans .factory .support .AbstractAutowireCapableBeanFactory .initializeBean(AbstractAutowireCapableBeanFactory.java:1417)
               ... 49 more
Caused by: java.lang.NullPointerException
at org .apache .cxf .frontend .AbstractWSDLBasedEndpointFactory .createBindingInfo(AbstractWSDLBasedEndpointFactory.java:338) at org .apache .cxf .jaxws .JaxWsServerFactoryBean .createBindingInfo(JaxWsServerFactoryBean.java:176) at org .apache .cxf .frontend .AbstractWSDLBasedEndpointFactory .createEndpointInfo(AbstractWSDLBasedEndpointFactory.java:252) at org .apache .cxf .frontend .AbstractWSDLBasedEndpointFactory .createEndpoint(AbstractWSDLBasedEndpointFactory.java:147) at org .apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java: 157) at org .apache .cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java: 202) at org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:433) at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:322)
               ... 58 more



Thanks


-Sonam

---------------------------------------------
Freeman Fang

FuseSource
Email:[email protected]
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com









Reply via email to