Hmm...  Sounds like its not finding the transport factory for some reason.

Can you add:

transportId="http://cxf.apache.org/transports/local";

to the jaxws:endpoint for the local one to force it?

Dan



On Friday 29 October 2010 4:52:06 pm Joe Lin wrote:
> Thanks for the reply. Here is the full stack:
> 
> Oct 29, 2010 12:22:39 AM org.springframework.web.context.ContextLoader
> initWebApplicationContext SEVERE: Context initialization failed
> org.springframework.beans.factory.BeanCreationException: Error creating
> bean with name 'helloLocal': Invocation of init method failed; nested
> exception is javax.xml.ws.WebServiceException:
> java.lang.NullPointerException at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFacto
> ry.initializeBean(AbstractAutowireCapableBeanFactory.java:1420) at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFacto
> ry.doCreateBean(AbstractAutowireCapableBeanFactory.java:519) at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFacto
> ry.createBean(AbstractAutowireCapableBeanFactory.java:456) at
> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(
> AbstractBeanFactory.java:291) at
> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.get
> Singleton(DefaultSingletonBeanRegistry.java:222) at
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(Ab
> stractBeanFactory.java:288) at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Abst
> ractBeanFactory.java:190) at
> org.springframework.beans.factory.support.DefaultListableBeanFactory.preIn
> stantiateSingletons(DefaultListableBeanFactory.java:580) at
> org.springframework.context.support.AbstractApplicationContext.finishBeanF
> actoryInitialization(AbstractApplicationContext.java:895) at
> org.springframework.context.support.AbstractApplicationContext.refresh(Abs
> tractApplicationContext.java:425) at
> org.springframework.web.context.ContextLoader.createWebApplicationContext(
> ContextLoader.java:276) at
> org.springframework.web.context.ContextLoader.initWebApplicationContext(Co
> ntextLoader.java:197) at
> org.springframework.web.context.ContextLoaderListener.contextInitialized(C
> ontextLoaderListener.java:47) at
> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.jav
> a:4135) at
> org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)
> at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java
> :791) at
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546) at
> org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:905) at
> org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:740) at
> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:500) at
> org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277) at
> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)
> at
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupp
> ort.java:119) at
> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) at
> org.apache.catalina.core.StandardHost.start(StandardHost.java:785) at
> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at
> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445) at
> org.apache.catalina.core.StandardService.start(StandardService.java:519)
> at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
> at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
> 39) at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorIm
> pl.java:25) at java.lang.reflect.Method.invoke(Method.java:597)
>       at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
>       at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
> Caused by: javax.xml.ws.WebServiceException: java.lang.NullPointerException
>       at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:335)
>       at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:238)
>       at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:481)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
> 39) at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorIm
> pl.java:25) at java.lang.reflect.Method.invoke(Method.java:597)
>       at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFacto
> ry.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1544) at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFacto
> ry.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1485) at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFacto
> ry.initializeBean(AbstractAutowireCapableBeanFactory.java:1417) ... 36 more
> Caused by: java.lang.NullPointerException
>       at
> org.apache.cxf.binding.soap.SoapTransportFactory.getDestination(SoapTransp
> ortFactory.java:123) at
> org.apache.cxf.endpoint.ServerImpl.initDestination(ServerImpl.java:92) at
> org.apache.cxf.endpoint.ServerImpl.<init>(ServerImpl.java:71)
>       at
> org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:14
> 9) at
> org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.
> java:183) at
> org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:407) at
> org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:314) ... 45
> more
> 
> --- On Fri, 10/29/10, Daniel Kulp <[email protected]> wrote:
> > From: Daniel Kulp <[email protected]>
> > Subject: Re: Problem using LocalTransport in Tomcat
> > To: [email protected]
> > Cc: "Joe Lin" <[email protected]>
> > Date: Friday, October 29, 2010, 12:21 PM
> > On Friday 29 October 2010 3:03:06 pm
> > 
> > Joe Lin wrote:
> > > Hi, I have two Jax-WS service endpoints that I
> > 
> > configure using the
> > 
> > > CXFServlet transport as the following (in beans.xml):
> > > 
> > > =============================================
> > >     <jaxws:endpoint
> > 
> > id="orderProcess"
> > 
> > > implementor="demo.order.OrderProcessImpl"
> > 
> > address="/OrderProcess" />
> > 
> > > <jaxws:endpoint id="helloService"
> > 
> > implementor="demo.order.HelloImpl"
> > 
> > > address="/hello" />
> > 
> > =============================================
> > 
> > > It all worked fine. And I'd like to have another
> > 
> > service that uses the
> > 
> > > LocalTransport. So I copied the example from the users
> > 
> > guide in cxf
> > 
> > > website.
> > > 
> > > =============================================
> > >     <bean
> > 
> > class="org.apache.cxf.transport.local.LocalTransportFactory"
> > 
> > > lazy-init="false"> <property
> > 
> > name="transportIds">
> > 
> > >       
> > 
> >    <list>
> > 
> > >           
> > 
> >    <value>http://cxf.apache.org/transports/local</value>
> > 
> > >           
> > 
> >    <value>http://schemas.xmlsoap.org/soap/http</value>
> > 
> > >           
> > 
> >    <value>http://schemas.xmlsoap.org/wsdl/soap/http</value>
> > 
> > Hmm... not sure why those last two URI's are
> > there.   Don't do that.   That
> > 
> > will likely cause other issues as other things will start
> > using the local
> > transport instead. 
> > 
> > BTW: you could just do:
> > <import
> > resource="classpath:META-INF/cxf/cxf-extension-local.xml"/>
> > instead.
> > 
> > >       
> > 
> >    </list>
> > 
> > >       </property>
> > >
> > >     </bean>
> > >
> > >       <jaxws:endpoint
> > 
> > id="helloLocal" address="local://hello"
> > 
> > > implementor="demo.order.HelloImpl2"/>
> > > 
> > >     <jaxws:endpoint
> > 
> > id="orderProcess"
> > 
> > > implementor="demo.order.OrderProcessImpl"
> > 
> > address="/OrderProcess" />
> > 
> > > <jaxws:endpoint id="helloService"
> > 
> > implementor="demo.order.HelloImpl"
> > 
> > > address="/hello" />
> > > 
> > > =============================================
> > > 
> > > 
> > > 
> > > But I'm getting this in catalina.out:
> > > =============================================
> > 
> > org.springframework.beans.factory.BeanCreationException:
> > Error creating
> > 
> > > bean with name 'helloLocal': Invocation of init method
> > 
> > failed; nested
> > 
> > > exception is javax.xml.ws.WebServiceException:
> > > java.lang.NullPointerException at
> > 
> > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact
> > o
> > 
> > ry.initializeBean(AbstractAutowireCapableBeanFactory.java:1420)
> > at
> > 
> > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact
> > o
> > 
> > ry.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
> > 
> > > ===============================================
> > 
> > Is there more to that stack trace?    Normally
> > there would be a "caused by"
> > thing with more lines.

-- 
Daniel Kulp
[email protected]
http://dankulp.com/blog

Reply via email to