You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by Andrew Clegg <an...@nervechannel.com> on 2009/06/22 21:59:32 UTC

IllegalAccessError: tried to access method org.apache.cxf.service.model.BindingOperationInfo. ...

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)

Re: IllegalAccessError: tried to access method org.apache.cxf.service.model.BindingOperationInfo. ...

Posted by Andrew Clegg <an...@nervechannel.com>.
Actually an 'mvn clean' seems to have fixed this, should have tried
before posting! Must have been older jars stuck in build path
somewhere.

So ignore me :-) I'll post again if it recurs and won't go away.

2009/6/23 Andrew Clegg <an...@nervechannel.com>:
> 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 <an...@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/ ::
>



-- 
:: http://biotext.org.uk/ ::

Re: IllegalAccessError: tried to access method org.apache.cxf.service.model.BindingOperationInfo. ...

Posted by Andrew Clegg <an...@nervechannel.com>.
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 <an...@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/ ::