Hi:
I'm using CXF2.0 release version for my first try of jax-ws, and now got
blocked by an error throwed by server.
I'm using JDK5.0, Tomcat5.5, Spring2.0.6.
here is my HellowWorld interface:
---------------------------------
package com.net2com.webservice;
import javax.jws.WebService;
@WebService
public interface HelloWorld {
String sayHi(String text);
}
and impl:
------------------------------------
package com.net2com.webservice;
import javax.jws.WebService;
@WebService(endpointInterface = "com.net2com.webservice.HelloWorld")
public class HelloWorldImpl implements HelloWorld {
public String sayHi(String text) {
return "Hello " + text;
}
}
Spring config: (I put both server and client into one application)
-------------------------------
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">
<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" />
.......
<jaxws:endpoint id="helloWorld"
implementor="com.net2com.webservice.HelloWorldImpl"
address="/HelloWorld" />
<bean id="client" class="com.net2com.webservice.HelloWorld"
factory-bean="clientFactory" factory-method="create"/>
<bean id="clientFactory"
class="org.apache.cxf.jaxws.JaxWsProxyFactoryBean">
<property name="serviceClass"
value="com.net2com.webservice.HelloWorld"/>
<property name="address"
value="http://localhost:8080/interface/webservice/HelloWorld"/>
</bean>
</beans>
tomcat web.xml
------------------------------------
<web-app>
.......
<servlet>
<servlet-name>CXFServlet</servlet-name>
<display-name>CXF Servlet</display-name>
<servlet-class>
org.apache.cxf.transport.servlet.CXFServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>CXFServlet</servlet-name>
<url-pattern>/webservice/*</url-pattern>
</servlet-mapping>
..............
</web-app>
and i already put following deps into WEB-INF/lib
-----------------------------------
commons-logging-1.1.jar
geronimo-activation_1.1_spec-1.0-M1.jar
geronimo-annotation_1.0_spec-1.1.jar
geronimo-javamail_1.4_spec-1.0-M1.jar
geronimo-servlet_2.5_spec-1.1-M1.jar
geronimo-ws-metadata_2.0_spec-1.1.1.jar
jaxb-api-2.0.jar
jaxb-impl-2.0.5.jar
jaxws-api-2.0.jar
saaj-api-1.3.jar
saaj-impl-1.3.jar
stax-api-1.0.1.jar
wsdl4j-1.6.1.jar
wstx-asl-3.2.1.jar
XmlSchema-1.2.jar
spring-2.0.6.jar
cxf-2.0-incubator.jar
-----------------------------#
that's all my did to run the first spring demo, but when i try to invoke
server side impl through:
this.helloWorldService = (HelloWorld) wac.getBean("client"); // get ws
client bean from spring context
...
String greet = helloWorldService.sayHi("CXF");
i got following error:
javax.xml.ws.soap.SOAPFaultException: Could not find destination factory for
transport http://schemas.xmlsoap.org/soap/http
at
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:168)
at $Proxy15.sayHi(Unknown Source)
at
com.net2com.face.action.thirdinterface.ThirdInterfaceQueryAction.queryOutBoundInterface(ThirdInterfaceQueryAction.java:75)
.......
Caused by: java.lang.RuntimeException: Could not find destination factory
for transport http://schemas.xmlsoap.org/soap/http
at
org.apache.cxf.binding.soap.SoapTransportFactory.getConduit(SoapTransportFactory.java:148)
.......
I already checked out some threads, some say their is another dependency
needed:
cxf-rt-transports-http-2.0-incubator.jar
but i wonder it's not what i want coz i have tried it out, while still
doesn't work.
I got stuck for a whole day to work this out, could any body here give me a
hand?
--
View this message in context:
http://www.nabble.com/Could-not-find-destination-factory-for-transport-tf4103147.html#a11668349
Sent from the cxf-user mailing list archive at Nabble.com.