Hi - I'm trying to learn how to build a dynamic client using CXF-2.2.2, and I'm having a problem right at the beginning with the reading of the WSDL where it complains that it can't do the code generation for the WSDL.
To begin with, here's the WSDL (autogenerated by axis on the server) for a toy service (which does indeed work): ------------------------------------------------------------------------ <wsdl:definitions targetNamespace="http://localhost:8080/axis/HelloService.jws"> <!-- WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT) --> <wsdl:message name="doServiceResponse"> <wsdl:part name="doServiceReturn" type="xsd:string"/> </wsdl:message> <wsdl:message name="doServiceRequest"></wsdl:message> <wsdl:portType name="HelloService"> <wsdl:operation name="doService"> <wsdl:input message="impl:doServiceRequest" name="doServiceRequest"/> <wsdl:output message="impl:doServiceResponse" name="doServiceResponse"/> </wsdl:operation> </wsdl:portType> <wsdl:binding name="HelloServiceSoapBinding" type="impl:HelloService"> <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="doService"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="doServiceRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://DefaultNamespace" use="encoded"/> </wsdl:input> <wsdl:output name="doServiceResponse"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost:8080/axis/HelloService.jws" use="encoded"/> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="HelloServiceService"> <wsdl:port binding="impl:HelloServiceSoapBinding" name="HelloService"> <wsdlsoap:address location="http://localhost:8080/axis/HelloService.jws"/> </wsdl:port> </wsdl:service> </wsdl:definitions> ------------------------------------------------------------------------ The client I'm running (HelloClient.java -- stripped down to the minimum to show the problem I'm having) is as follows: ------------------------------------------------------------------------ package foo; import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory; import org.apache.cxf.endpoint.Client; public final class HelloClient { public static void main(String[] args) { String wsdl = args[0]; System.out.println("The WSDL is at: " + wsdl + " # sanity check"); JaxWsDynamicClientFactory factory = JaxWsDynamicClientFactory.newInstance(); Client client = factory.createClient(wsdl); } } ------------------------------------------------------------------------ which, when compiled and run give: ------------------------------------------------------------------------ $ ls foo $ ls foo/ HelloClient.java $ java -version java version "1.6.0_07" Java(TM) SE Runtime Environment (build 1.6.0_07-b06) Java HotSpot(TM) Server VM (build 10.0-b23, mixed mode) $ javac -version javac 1.6.0_07 $ javac -cp /home/dakatz/archive/jlibs/apache-cxf-2.2.2/lib/cxf-2.2.2.jar foo/HelloClient.java $ # Following CXF directions, use the JAXB jars in the CXF distribution $ # rather than the ones in the JRE. $ # $ java -cp .:/home/dakatz/archive/jlibs/apache-cxf-2.2.2/lib/cxf-2.2.2.jar:/home/dakatz/archive/jlibs/apache-cxf-2.2.2/lib/wsdl4j-1.6.2.jar:/home/dakatz/archive/jlibs/apache-cxf-2.2.2/lib/XmlSchema-1.4.5.jar:/home/dakatz/archive/jlibs/apache-cxf-2.2.2/lib/jaxb-xjc-2.1.9.jar:/home/dakatz/archive/jlibs/apache-cxf-2.2.2/lib/jaxb-impl-2.1.9.jar foo.HelloClient http://localhost:8080/axis/HelloService.jws?wsdl The WSDL is at: http://localhost:8080/axis/HelloService.jws?wsdl # sanity check Jul 12, 2009 12:31:22 PM org.apache.cxf.endpoint.dynamic.DynamicClientFactory outputDebug INFO: Created classes: javac: no source files Usage: javac <options> <source files> use -help for a list of possible options Jul 12, 2009 12:31:22 PM org.apache.cxf.endpoint.dynamic.DynamicClientFactory createClient SEVERE: Could not compile java files for http://localhost:8080/axis/HelloService.jws?wsdl. $ ------------------------------------------------------------------------ Any suggestions on where to start? I saw something in this list from 2007 (I think) which discussed a similar symptom and laid it at the feet of an old javac implementation, but my javac version is clearly decently recent... Thanks! Dan
