PS... I should also have mentioned that one of my JUnit tests brings the exact same service up from the same WSDL using the same endpoint implementor, in an embedded instance of Jetty, without problems, using the Endpoint.publish mechanism.
This particular problem only seems to occur when Spring constructs the service. Andrew. 2009/6/22 Andrew Clegg <and...@nervechannel.com> > > Evening all, > > I've just upgraded to CXF 2.2.2 from 2.1.4, and now I get the > exception below when I try to deploy my application. It's a Provider > service that also acts as a Dispatch client to another set of > services, and uses (directly or indirectly) Spring, Guice and > Hibernate. > > Any idea how I could go about diagnosing this? It looked to me like > maybe there were two versions of CXF in the classpath, but Maven's > dependency hierarchy doesn't show a conflict. > > There's nothing fancy in my CXF config, my service is just created like this: > > <jaxws:endpoint id="FrontEndService" > implementor="info.cathdb.funcnet.impl.FrontEndServiceProviderFacade" > endpointName="funcnet:FrontEndPort" > serviceName="funcnet:FrontEndService" > address="/FrontEndService" > wsdlLocation="WEB-INF/wsdl/Services.wsdl"> > </jaxws:endpoint> > > Thanks in advance! > > Andrew. > > Stacktrace follows: > > > Jun 22, 2009 8:44:37 PM org.apache.catalina.core.ApplicationContext log > SEVERE: StandardWrapper.Throwable > org.springframework.beans.factory.BeanCreationException: Error > creating bean with name 'FrontEndService': Invocation of init method > failed; nested exception is java.lang.IllegalAccessError: tried to > access method > org.apache.cxf.service.model.BindingOperationInfo.<init>(Lorg/apache/cxf/service/model/BindingInfo;Lorg/apache/cxf/service/model/OperationInfo;)V > from class org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean > Caused by: java.lang.IllegalAccessError: tried to access method > org.apache.cxf.service.model.BindingOperationInfo.<init>(Lorg/apache/cxf/service/model/BindingInfo;Lorg/apache/cxf/service/model/OperationInfo;)V > from class org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean > at > org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.initializeWSDLOperationsForProvider(JaxWsServiceFactoryBean.java:322) > at > org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.initializeWSDLOperations(JaxWsServiceFactoryBean.java:236) > at > org.apache.cxf.service.factory.ReflectionServiceFactoryBean.buildServiceFromWSDL(ReflectionServiceFactoryBean.java:328) > at > org.apache.cxf.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:420) > at > org.apache.cxf.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:190) > at > org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:163) > at > org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:100) > at > org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:117) > at > org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:167) > at org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:346) > at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:259) > at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:209) > at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:404) > 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:1242) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1208) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1172) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:427) > at > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(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.preInstantiateSingletons(DefaultListableBeanFactory.java:291) > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352) > at > org.apache.cxf.transport.servlet.CXFServlet.loadAdditionalConfig(CXFServlet.java:166) > at > org.apache.cxf.transport.servlet.CXFServlet.updateContext(CXFServlet.java:134) > at > org.apache.cxf.transport.servlet.CXFServlet.loadSpringBus(CXFServlet.java:101) > at > org.apache.cxf.transport.servlet.CXFServlet.loadBus(CXFServlet.java:70) > at > org.apache.cxf.transport.servlet.AbstractCXFServlet.init(AbstractCXFServlet.java:79) > at > org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161) > at > org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:806) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) > at > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) > at > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) > at java.lang.Thread.run(Thread.java:619) > Jun 22, 2009 8:44:37 PM org.apache.catalina.core.StandardWrapperValve invoke > SEVERE: Allocate exception for servlet WebServicePort > java.lang.IllegalAccessError: tried to access method > org.apache.cxf.service.model.BindingOperationInfo.<init>(Lorg/apache/cxf/service/model/BindingInfo;Lorg/apache/cxf/service/model/OperationInfo;)V > from class org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean > at > org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.initializeWSDLOperationsForProvider(JaxWsServiceFactoryBean.java:322) > at > org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.initializeWSDLOperations(JaxWsServiceFactoryBean.java:236) > at > org.apache.cxf.service.factory.ReflectionServiceFactoryBean.buildServiceFromWSDL(ReflectionServiceFactoryBean.java:328) > at > org.apache.cxf.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:420) > at > org.apache.cxf.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:190) > at > org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:163) > at > org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:100) > at > org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:117) > at > org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:167) > at org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:346) > at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:259) > at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:209) > at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:404) > 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:1242) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1208) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1172) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:427) > at > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(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.preInstantiateSingletons(DefaultListableBeanFactory.java:291) > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352) > at > org.apache.cxf.transport.servlet.CXFServlet.loadAdditionalConfig(CXFServlet.java:166) > at > org.apache.cxf.transport.servlet.CXFServlet.updateContext(CXFServlet.java:134) > at > org.apache.cxf.transport.servlet.CXFServlet.loadSpringBus(CXFServlet.java:101) > at > org.apache.cxf.transport.servlet.CXFServlet.loadBus(CXFServlet.java:70) > at > org.apache.cxf.transport.servlet.AbstractCXFServlet.init(AbstractCXFServlet.java:79) > at > org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161) > at > org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:806) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) > at > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) > at > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) > at java.lang.Thread.run(Thread.java:619) -- :: http://biotext.org.uk/ ::