Completely agree. Don't go down the path of relying on the IDE to do any JAX-WS code generation and expect to be able to debug issues. Having first-hand experience with this nightmare from days of using IBM RAD and other Eclipse-based IDEs. It "covers up" how the process and tools like wsgen / wsimport (JAX-WS RI/Metro) OR java2ws / wsdl2Java (CXF) actually work.
We have used Ant (yeah....Maven folks cringe, I know, but we are getting there) to do all manner of JAX-WS WSDL/XSD and Java client proxy code generation very successfully without relying on anything the IDE provides. I believe the tutorials here: http://www.jroller.com/gmazza/entry/java_first_web_service http://www.jroller.com/gmazza/entry/web_service_tutorial All use Maven...and even if you are an Ant user ... they are still immensely helpful. Mark On Mon, Jun 18, 2012 at 2:58 PM, Glen Mazza <[email protected]> wrote: > Oh, building artifacts via IDE sounds painful. Perhaps someone else can > answer your question, but I'd highly recommend building your project with > Maven, and just leaving Eclipse for coding, instead of artifact generation: > http://www.jroller.com/gmazza/**entry/web_service_tutorial<http://www.jroller.com/gmazza/entry/web_service_tutorial> > . > > Glen > > > On 06/18/2012 11:16 AM, mrtshezi wrote: > >> Hi All >> >> Please help >> I have installed Apache CXF in my eclipse. When i create a web services >> from >> WSDL the IDE return the following error >> >> >> Loading FrontEnd jaxws ... >> Loading DataBinding jaxb ... >> wsdl2java -d C:\eclipse\Workspace\new\.**cxftmp/src -classdir >> C:\eclipse\Workspace\new\**build\classes -p >> http://LoanBrokerProcess.**process <http://LoanBrokerProcess.process> >> =process.**loanbrokerprocess. -impl -validate >> -exsh false -dns true -dex true -wsdlLocation >> http://localhost:9080/new/**services/**LoanBrokerProcessSOAP11port_** >> http?wsdl<http://localhost:9080/new/services/LoanBrokerProcessSOAP11port_http?wsdl> >> -verbose -defaultValues -fe jaxws -db jaxb -wv 1.1 >> file:/C:/eclipse/Workspace/**new/WebContent/wsdl/loanBoker.**wsdl >> wsdl2java - Apache CXF 2.6.1 >> >> >> WSDLToJava Error: java.lang.reflect.**UndeclaredThrowableException >> >> org.apache.cxf.tools.common.**ToolException: >> java.lang.reflect.**UndeclaredThrowableException >> at >> org.apache.cxf.tools.wsdlto.**WSDLToJavaContainer.execute(** >> WSDLToJavaContainer.java:294) >> at >> org.apache.cxf.tools.common.**toolspec.ToolRunner.runTool(** >> ToolRunner.java:103) >> at org.apache.cxf.tools.wsdlto.**WSDLToJava.run(WSDLToJava.** >> java:113) >> at org.apache.cxf.tools.wsdlto.**WSDLToJava.run(WSDLToJava.** >> java:86) >> at org.apache.cxf.tools.wsdlto.**WSDLToJava.main(WSDLToJava.** >> java:184) >> Caused by: java.lang.reflect.**UndeclaredThrowableException >> at $Proxy39.required(Unknown Source) >> at >> com.sun.tools.xjc.generator.**bean.field.AbstractField.** >> annotateReference(**AbstractField.java:192) >> at >> com.sun.tools.xjc.generator.**bean.field.AbstractField.** >> annotate(AbstractField.java:**161) >> at >> com.sun.tools.xjc.generator.**bean.field.**AbstractFieldWithVar.** >> createField(**AbstractFieldWithVar.java:80) >> at >> com.sun.tools.xjc.generator.**bean.field.SingleField.<init>(** >> SingleField.java:94) >> at >> com.sun.tools.xjc.generator.**bean.field.SingleField.<init>(** >> SingleField.java:81) >> at sun.reflect.**NativeConstructorAccessorImpl.**newInstance0(Native >> Method) >> at sun.reflect.**NativeConstructorAccessorImpl.**newInstance(Unknown >> Source) >> at sun.reflect.**DelegatingConstructorAccessorI** >> mpl.newInstance(Unknown >> Source) >> at java.lang.reflect.Constructor.**newInstance(Unknown Source) >> at >> com.sun.tools.xjc.generator.**bean.field.**GenericFieldRenderer.generate( >> **GenericFieldRenderer.java:69) >> at >> com.sun.tools.xjc.generator.**bean.field.**DefaultFieldRenderer.generate( >> **DefaultFieldRenderer.java:82) >> at >> com.sun.tools.xjc.generator.**bean.BeanGenerator.**generateFieldDecl(** >> BeanGenerator.java:774) >> at >> com.sun.tools.xjc.generator.**bean.BeanGenerator.**generateClassBody(** >> BeanGenerator.java:555) >> at >> com.sun.tools.xjc.generator.**bean.BeanGenerator.<init>(** >> BeanGenerator.java:258) >> at >> com.sun.tools.xjc.generator.**bean.BeanGenerator.generate(** >> BeanGenerator.java:166) >> at com.sun.tools.xjc.model.Model.**generateCode(Model.java:290) >> at >> com.sun.tools.xjc.api.impl.**s2j.SchemaCompilerImpl.bind(** >> SchemaCompilerImpl.java:283) >> at >> com.sun.tools.xjc.api.impl.**s2j.SchemaCompilerImpl.bind(** >> SchemaCompilerImpl.java:94) >> at >> org.apache.cxf.tools.wsdlto.**databinding.jaxb.** >> JAXBDataBinding.initialize(**JAXBDataBinding.java:410) >> at >> org.apache.cxf.tools.wsdlto.**WSDLToJavaContainer.**generateTypes(** >> WSDLToJavaContainer.java:589) >> at >> org.apache.cxf.tools.wsdlto.**WSDLToJavaContainer.**processWsdl(** >> WSDLToJavaContainer.java:242) >> at >> org.apache.cxf.tools.wsdlto.**WSDLToJavaContainer.execute(** >> WSDLToJavaContainer.java:139) >> at >> org.apache.cxf.tools.wsdlto.**WSDLToJavaContainer.execute(** >> WSDLToJavaContainer.java:286) >> ... 4 more >> Caused by: java.lang.**NoSuchMethodException: >> javax.xml.bind.annotation.**XmlElementRef.required() >> at java.lang.Class.**getDeclaredMethod(Unknown Source) >> at >> com.sun.codemodel.**TypedAnnotationWriter.invoke(** >> TypedAnnotationWriter.java:**112) >> ... 28 more >> Loading FrontEnd jaxws ... >> Loading DataBinding jaxb ... >> wsdl2java -d C:\eclipse\Workspace\new\.**cxftmp/src -classdir >> C:\eclipse\Workspace\new\**build\classes -p >> http://LoanBrokerProcess.**process <http://LoanBrokerProcess.process> >> =process.**loanbrokerprocess -impl -validate >> -exsh false -dns true -dex true -wsdlLocation >> http://localhost:9080/new/**services/**LoanBrokerProcessSOAP11port_** >> http?wsdl<http://localhost:9080/new/services/LoanBrokerProcessSOAP11port_http?wsdl> >> -verbose -sn LoanBrokerProcess -defaultValues -fe jaxws -db jaxb -wv 1.1 >> file:/C:/eclipse/Workspace/**new/WebContent/wsdl/loanBoker.**wsdl >> wsdl2java - Apache CXF 2.6.1 >> >> >> WSDLToJava Error: java.lang.reflect.**UndeclaredThrowableException >> >> org.apache.cxf.tools.common.**ToolException: >> java.lang.reflect.**UndeclaredThrowableException >> at >> org.apache.cxf.tools.wsdlto.**WSDLToJavaContainer.execute(** >> WSDLToJavaContainer.java:294) >> at >> org.apache.cxf.tools.common.**toolspec.ToolRunner.runTool(** >> ToolRunner.java:103) >> at org.apache.cxf.tools.wsdlto.**WSDLToJava.run(WSDLToJava.** >> java:113) >> at org.apache.cxf.tools.wsdlto.**WSDLToJava.run(WSDLToJava.** >> java:86) >> at org.apache.cxf.tools.wsdlto.**WSDLToJava.main(WSDLToJava.** >> java:184) >> Caused by: java.lang.reflect.**UndeclaredThrowableException >> at $Proxy39.required(Unknown Source) >> at >> com.sun.tools.xjc.generator.**bean.field.AbstractField.** >> annotateReference(**AbstractField.java:192) >> at >> com.sun.tools.xjc.generator.**bean.field.AbstractField.** >> annotate(AbstractField.java:**161) >> at >> com.sun.tools.xjc.generator.**bean.field.**AbstractFieldWithVar.** >> createField(**AbstractFieldWithVar.java:80) >> at >> com.sun.tools.xjc.generator.**bean.field.SingleField.<init>(** >> SingleField.java:94) >> at >> com.sun.tools.xjc.generator.**bean.field.SingleField.<init>(** >> SingleField.java:81) >> at sun.reflect.**NativeConstructorAccessorImpl.**newInstance0(Native >> Method) >> at sun.reflect.**NativeConstructorAccessorImpl.**newInstance(Unknown >> Source) >> at sun.reflect.**DelegatingConstructorAccessorI** >> mpl.newInstance(Unknown >> Source) >> at java.lang.reflect.Constructor.**newInstance(Unknown Source) >> at >> com.sun.tools.xjc.generator.**bean.field.**GenericFieldRenderer.generate( >> **GenericFieldRenderer.java:69) >> at >> com.sun.tools.xjc.generator.**bean.field.**DefaultFieldRenderer.generate( >> **DefaultFieldRenderer.java:82) >> at >> com.sun.tools.xjc.generator.**bean.BeanGenerator.**generateFieldDecl(** >> BeanGenerator.java:774) >> at >> com.sun.tools.xjc.generator.**bean.BeanGenerator.**generateClassBody(** >> BeanGenerator.java:555) >> at >> com.sun.tools.xjc.generator.**bean.BeanGenerator.<init>(** >> BeanGenerator.java:258) >> at >> com.sun.tools.xjc.generator.**bean.BeanGenerator.generate(** >> BeanGenerator.java:166) >> at com.sun.tools.xjc.model.Model.**generateCode(Model.java:290) >> at >> com.sun.tools.xjc.api.impl.**s2j.SchemaCompilerImpl.bind(** >> SchemaCompilerImpl.java:283) >> at >> com.sun.tools.xjc.api.impl.**s2j.SchemaCompilerImpl.bind(** >> SchemaCompilerImpl.java:94) >> at >> org.apache.cxf.tools.wsdlto.**databinding.jaxb.** >> JAXBDataBinding.initialize(**JAXBDataBinding.java:410) >> at >> org.apache.cxf.tools.wsdlto.**WSDLToJavaContainer.**generateTypes(** >> WSDLToJavaContainer.java:589) >> at >> org.apache.cxf.tools.wsdlto.**WSDLToJavaContainer.**processWsdl(** >> WSDLToJavaContainer.java:242) >> at >> org.apache.cxf.tools.wsdlto.**WSDLToJavaContainer.execute(** >> WSDLToJavaContainer.java:139) >> at >> org.apache.cxf.tools.wsdlto.**WSDLToJavaContainer.execute(** >> WSDLToJavaContainer.java:286) >> ... 4 more >> Caused by: java.lang.**NoSuchMethodException: >> javax.xml.bind.annotation.**XmlElementRef.required() >> at java.lang.Class.**getDeclaredMethod(Unknown Source) >> at >> com.sun.codemodel.**TypedAnnotationWriter.invoke(** >> TypedAnnotationWriter.java:**112) >> ... 28 more >> >> >> My WSDL >> >> >> <?xml version="1.0" encoding="UTF-8"?> >> <definitions >> targetNamespace="http://**LoanBrokerProcess.process<http://LoanBrokerProcess.process> >> " >> xmlns="http://schemas.xmlsoap.**org/wsdl/<http://schemas.xmlsoap.org/wsdl/> >> " >> xmlns:wsdl2="http://Bank.**laonBrokerApp.org<http://Bank.laonBrokerApp.org> >> " >> xmlns:wsdl1="http://Lender.**loanBrokerApp.org<http://Lender.loanBrokerApp.org> >> " >> xmlns:wsdl="http://schemas.**xmlsoap.org/wsdl/<http://schemas.xmlsoap.org/wsdl/> >> " >> xmlns:ns2="http://**CreditAgency.loanBrokerApp.org<http://CreditAgency.loanBrokerApp.org> >> **" >> xmlns:ns1="http://Lender.**loanBrokerApp.org<http://Lender.loanBrokerApp.org> >> " >> xmlns:plnk="http://docs.oasis-**open.org/wsbpel/2.0/plnktype<http://docs.oasis-open.org/wsbpel/2.0/plnktype> >> " >> xmlns:wsaw="http://www.w3.org/**2006/05/addressing/wsdl<http://www.w3.org/2006/05/addressing/wsdl> >> " >> xmlns:tns="http://**LoanBrokerProcess.process<http://LoanBrokerProcess.process> >> " >> xmlns:ns0="http://Bank.**laonBrokerApp.org<http://Bank.laonBrokerApp.org> >> " >> xmlns:vprop="http://docs.**oasis-open.org/wsbpel/2.0/**varprop<http://docs.oasis-open.org/wsbpel/2.0/varprop> >> " >> xmlns:mime="http://schemas.**xmlsoap.org/wsdl/mime/<http://schemas.xmlsoap.org/wsdl/mime/> >> " >> xmlns:soap="http://schemas.**xmlsoap.org/wsdl/soap/<http://schemas.xmlsoap.org/wsdl/soap/> >> "> >> <types> >> <schema attributeFormDefault="**unqualified" >> elementFormDefault="qualified" >> targetNamespace="http://**LoanBrokerProcess.process<http://LoanBrokerProcess.process> >> " >> xmlns="http://www.w3.org/2001/**XMLSchema<http://www.w3.org/2001/XMLSchema> >> " >> xmlns:wsdl="http://**CreditAgency.loanBrokerApp.org<http://CreditAgency.loanBrokerApp.org> >> **"> >> <element name="**LoanBrokerProcessRequest"> >> <complexType> >> <sequence> >> <element name="input" type="string"/> >> </sequence> >> </complexType> >> </element> >> <element name="**LoanBrokerProcessResponse"> >> <complexType> >> <sequence> >> <element name="result" type="string"/> >> </sequence> >> </complexType> >> </element> >> </schema> >> <xs:schema attributeFormDefault="**qualified" >> elementFormDefault="qualified" >> targetNamespace="http://Bank.**laonBrokerApp.org<http://Bank.laonBrokerApp.org> >> " >> xmlns:ns="http://Bank.**laonBrokerApp.org <http://Bank.laonBrokerApp.org> >> " >> xmlns:ns1="http://org.apache.**axis2/xsd <http://org.apache.axis2/xsd>" >> xmlns:xs="http://www.w3.org/**2001/XMLSchema<http://www.w3.org/2001/XMLSchema> >> "> >> <xs:element name="calcRate"> >> <xs:complexType> >> <xs:sequence> >> <xs:element minOccurs="0" name="num" nillable="true" type="xs:string"/> >> </xs:sequence> >> </xs:complexType> >> </xs:element> >> <xs:element name="calcRateResponse"> >> <xs:complexType> >> <xs:sequence> >> <xs:element minOccurs="0" name="return" type="xs:double"/> >> </xs:sequence> >> </xs:complexType> >> </xs:element> >> <xs:element name="Results"> >> <xs:complexType> >> <xs:sequence> >> <xs:element minOccurs="0" name="rate" type="xs:double"/> >> <xs:element minOccurs="0" name="creditHistory" type="xs:int"/> >> <xs:element minOccurs="0" name="creditScore" type="xs:int"/> >> <xs:element minOccurs="0" name="amount" nillable="true" type="xs:string"/> >> <xs:element minOccurs="0" name="bName" nillable="true" type="xs:string"/> >> </xs:sequence> >> </xs:complexType> >> </xs:element> >> <xs:element name="ResultsResponse"> >> <xs:complexType> >> <xs:sequence> >> <xs:element minOccurs="0" name="return" nillable="true" type="xs:string"/> >> </xs:sequence> >> </xs:complexType> >> </xs:element> >> </xs:schema> >> <xs:schema attributeFormDefault="**qualified" >> elementFormDefault="qualified" >> targetNamespace="http://**Lender.loanBrokerApp.org<http://Lender.loanBrokerApp.org> >> " >> xmlns:ns="http://Lender.**loanBrokerApp.org<http://Lender.loanBrokerApp.org> >> " >> xmlns:ns1="http://org.apache.**axis2/xsd <http://org.apache.axis2/xsd>" >> xmlns:xs="http://www.w3.org/**2001/XMLSchema<http://www.w3.org/2001/XMLSchema> >> "> >> <xs:element name="selectLenders"> >> <xs:complexType> >> <xs:sequence> >> <xs:element minOccurs="0" name="am" nillable="true" type="xs:string"/> >> <xs:element minOccurs="0" name="score" type="xs:int"/> >> <xs:element minOccurs="0" name="hlength" type="xs:int"/> >> </xs:sequence> >> </xs:complexType> >> </xs:element> >> <xs:element name="selectLendersResponse"> >> <xs:complexType> >> <xs:sequence> >> <xs:element minOccurs="0" name="return" nillable="true" type="xs:string"/> >> </xs:sequence> >> </xs:complexType> >> </xs:element> >> </xs:schema> >> <xs:schema attributeFormDefault="**qualified" >> elementFormDefault="qualified" >> targetNamespace="http://**CreditAgency.loanBrokerApp.org<http://CreditAgency.loanBrokerApp.org> >> **" >> xmlns:ns="http://CreditAgency.**loanBrokerApp.org<http://CreditAgency.loanBrokerApp.org> >> " >> xmlns:ns1="http://org.apache.**axis2/xsd <http://org.apache.axis2/xsd>" >> xmlns:xs="http://www.w3.org/**2001/XMLSchema<http://www.w3.org/2001/XMLSchema> >> "> >> <xs:element name="getAmount"> >> <xs:complexType> >> <xs:sequence> >> <xs:element minOccurs="0" name="amount" nillable="true" type="xs:string"/> >> </xs:sequence> >> </xs:complexType> >> </xs:element> >> <xs:element name="getAmountResponse"> >> <xs:complexType> >> <xs:sequence> >> <xs:element minOccurs="0" name="return" nillable="true" type="xs:string"/> >> </xs:sequence> >> </xs:complexType> >> </xs:element> >> <xs:element name="calcScore"> >> <xs:complexType> >> <xs:sequence> >> <xs:element minOccurs="0" name="num" nillable="true" type="xs:string"/> >> </xs:sequence> >> </xs:complexType> >> </xs:element> >> <xs:element name="calcScoreResponse"> >> <xs:complexType> >> <xs:sequence> >> <xs:element minOccurs="0" name="return" type="xs:int"/> >> </xs:sequence> >> </xs:complexType> >> </xs:element> >> <xs:element name="calcHistLength"> >> <xs:complexType> >> <xs:sequence> >> <xs:element minOccurs="0" name="num" nillable="true" type="xs:string"/> >> </xs:sequence> >> </xs:complexType> >> </xs:element> >> <xs:element name="calcHistLengthResponse"> >> <xs:complexType> >> <xs:sequence> >> <xs:element minOccurs="0" name="return" type="xs:int"/> >> </xs:sequence> >> </xs:complexType> >> </xs:element> >> </xs:schema> >> </types> >> <message name="**LoanBrokerProcessRequestMessag**e"> >> <part name="payload" element="tns:**LoanBrokerProcessRequest"> >> </part> >> </message> >> <message name="**LoanBrokerProcessResponseMessa**ge"> >> <part name="payload" element="tns:**LoanBrokerProcessResponse"> >> </part> >> </message> >> <portType name="**LoanBrokerProcessPortType"> >> <operation name="process"> >> <input message="tns:**LoanBrokerProcessRequestMessag**e" >> wsaw:Action="http://**LoanBrokerProcess.process/**process<http://LoanBrokerProcess.process/process> >> "> >> </input> >> <output message="tns:**LoanBrokerProcessResponseMessa**ge" >> wsaw:Action="http://**LoanBrokerProcess.process/**LoanBrokerProcess/** >> processResponse<http://LoanBrokerProcess.process/LoanBrokerProcess/processResponse> >> "> >> </output> >> </operation> >> </portType> >> <binding name="**LoanBrokerProcessSOAP11Binding**" >> type="tns:**LoanBrokerProcessPortType"> >> <soap:binding style="document" >> transport="http://schemas.**xmlsoap.org/soap/http<http://schemas.xmlsoap.org/soap/http> >> "/> >> <operation name="process"> >> <soap:operation soapAction="http://**LoanBrokerProcess.process/** >> process <http://LoanBrokerProcess.process/process>" >> style="document"/> >> <input> >> <soap:body use="literal"/> >> </input> >> <output> >> <soap:body use="literal"/> >> </output> >> </operation> >> </binding> >> <service name="LoanBrokerProcess"> >> <port name="**LoanBrokerProcessSOAP11port_**http" >> binding="tns:**LoanBrokerProcessSOAP11Binding**"> >> <soap:address >> location="http://localhost:**9080/new/services/** >> LoanBrokerProcessSOAP11port_**http<http://localhost:9080/new/services/LoanBrokerProcessSOAP11port_http> >> "/> >> </port> >> </service> >> </definitions> >> >> >> -- >> View this message in context: http://cxf.547215.n5.nabble.** >> com/Problem-with-apache-CXF-2-**6-1-and-eclipse-tp5709937.html<http://cxf.547215.n5.nabble.com/Problem-with-apache-CXF-2-6-1-and-eclipse-tp5709937.html> >> Sent from the cxf-user mailing list archive at Nabble.com. >> > > > -- > Glen Mazza > Talend Community Coders > coders.talend.com > blog: www.jroller.com/gmazza > > * *
