Hi,
I'm using CXF 2.2.1 with Spring 2.5.6 and would like to use
@Aspect driven aspects which requires adding
<aop:aspect-autoproxy/> to the spring configuration file.
However, as soon as I add this, I get errors in creating jaxws:endpoint
definitions (even if I use implementor, implementorClass technique). It
looks like with the Aspectj 1.6.2 technique, DestinationFactoryManager never
gets setup right. In particular, the invokePostConstruct() method isn't able
to get any method with @PostConstruct because the proxy doesn't have the
@PostConstruct annotation and down the line I get an exception with a stack
trace such as: (abbreviated stack trace below). I know the aspect-autoproxy
tag causes Spring to proxy every single bean it manages (when raised as an
issue, Spring team has not been favorably disposed to address this). I can't
be the first person to have run into this. Can anyone help?
Caused by: javax.xml.ws.WebServiceException: java.lang.NullPointerException
at
org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:275)
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:1414)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory
.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1375)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory
.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
... 39 more
Caused by: java.lang.NullPointerException
at
org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpointInfo(
AbstractWSDLBasedEndpointFactory.java:240)
at
org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(Abst
ractWSDLBasedEndpointFactory.java:146)
at
org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:117)
at
org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.ja
va:168)
at
org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:346)
at
org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:259)