Freeman,  I misread the backtrace. Sorry.

On Wed, Apr 18, 2012 at 1:03 AM, Freeman Fang <[email protected]> wrote:
> Hi,
>
> This is a known issue.
> Since CXF 2.3 by default wsdl2java will generate jaxws 2.2 spec code which
> need use jaxb 2.2,
> java.xml.bind.annotation.XmlElementRef.required() is from jaxb2.2 api,
> however java6 build-in jaxws 2.1 api which cause such error.
>
> You have several options to resolve it
>
> 1. endorsed jaxws2.2 and jaxb2.2 api in your jdk, take a look at [1] to get
> more details
> 2. as you're using cxf 2.3.9, you can use a new flag for wsdl2java tool
> introuducd from cxf 2.3.3
> wsdl2java -frontend jaxws21
> to generate code which is jaxws2.1 api compatible.
> 3. use jdk5 instead
>
> I personally prefer option 1, If you use wsdl2java script shipped with kit
> or maven cxf codegen plugin, it's already setup for you.
>
> [1]http://cxf.apache.org/docs/23-migration-guide.html
>
> Freeman
>
>
> On 2012-4-17, at 下午8:41, harihara.muvvala wrote:
>
>> /*Hi,
>>
>> We have gone through multiple posts in forum. These posts are referring to
>> different versions. We are using cxf 2.3.2 and jaxb 2.2.1.
>>
>> We are creating java files from wsdl. Result required binding as XML has
>> recurrence nodes.
>> Here is binding info:*/
>>
>> -------------------------------------
>> - <jaxb:bindings xmlns:xsd="http://www.w3.org/2001/XMLSchema";
>> xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"; version="2.1">
>> - <jaxb:bindings schemaLocation="Result.xsd">
>> - <jaxb:bindings
>>
>> node="/xsd:schema/xsd:complexType[@name='interactionDrugType']/xsd:sequence/xsd:element[@name='Allergy']/xsd:complexType/xsd:choice/xsd:element[@name='SubstanceClass']/xsd:complexType/xsd:sequence/xsd:element[@name='CrossSensitive']/xsd:complexType/xsd:sequence/xsd:element[@name='SubstanceClass']/xsd:complexType">
>>  <jaxb:class name="SubstanceClassAllergy" />
>>  </jaxb:bindings>
>> - <jaxb:bindings
>>
>> node="/xsd:schema/xsd:complexType[@name='interactionDrugType']/xsd:sequence/xsd:element[@name='Allergy']/xsd:complexType/xsd:choice/xsd:element[@name='Molecule']/xsd:complexType/xsd:choice/xsd:element[@name='SubstanceClass']/xsd:complexType/xsd:sequence/xsd:element[@name='CrossSensitive']/xsd:complexType/xsd:sequence/xsd:element[@name='SubstanceClass']/xsd:complexType">
>>  <jaxb:class name="SubstanceClassAllergyMolecule" />
>>  </jaxb:bindings>
>> - <jaxb:bindings
>>
>> node="/xsd:schema/xsd:complexType[@name='interactionDrugType']/xsd:sequence/xsd:element[@name='Allergy']/xsd:complexType/xsd:choice/xsd:element[@name='Molecule']/xsd:complexType/xsd:choice/xsd:element[@name='SubstanceClass']/xsd:complexType/xsd:sequence/xsd:element[@name='CrossSensitive']/xsd:complexType/xsd:sequence/xsd:element[@name='SubstanceClass']/xsd:complexType/xsd:choice/xsd:element[@name='Molecule']/xsd:complexType">
>>  <jaxb:class name="SubstanceClassAllergyMoleculeSubMolecule" />
>>  </jaxb:bindings>
>>  </jaxb:bindings>
>>  </jaxb:bindings>
>> ------------------------------------------------
>>
>> /*
>> we are getting following errors: If we remove recurring elements, we are
>> able to generate.*/
>>
>> --------------------------------------------------------------------
>>    [java] WSDLToJava Error: java.lang.reflect.UndeclaredThrowableException
>>    [java]
>>    [java] org.apache.cxf.tools.common.ToolException:
>> java.lang.reflect.UndeclaredThrowableException
>>    [java]           at
>>
>> org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.execute(WSDLToJavaContainer.java:288)
>>    [java]           at
>>
>> org.apache.cxf.tools.common.toolspec.ToolRunner.runTool(ToolRunner.java:103)
>>    [java]           at
>> org.apache.cxf.tools.wsdlto.WSDLToJava.run(WSDLToJava.java:113)
>>    [java]           at
>> org.apache.cxf.tools.wsdlto.WSDLToJava.run(WSDLToJava.java:86)
>>    [java]           at
>> org.apache.cxf.tools.wsdlto.WSDLToJava.main(WSDLToJava.java:184)
>>    [java] Caused by: java.lang.reflect.UndeclaredThrowableException
>>    [java]           at $Proxy46.required(Unknown Source)
>>    [java]           at
>>
>> com.sun.tools.xjc.generator.bean.field.AbstractField.annotateReference(AbstractField.java:197)
>>    [java]           at
>>
>> com.sun.tools.xjc.generator.bean.field.AbstractField.annotate(AbstractField.java:156)
>>    [java]           at
>>
>> com.sun.tools.xjc.generator.bean.field.AbstractListField.generate(AbstractListField.java:124)
>>    [java]           at
>>
>> com.sun.tools.xjc.generator.bean.field.UntypedListField.<init>(UntypedListField.java:107)
>>    [java]           at
>>
>> com.sun.tools.xjc.generator.bean.field.UntypedListFieldRenderer.generate(UntypedListFieldRenderer.java:72)
>>    [java]           at
>>
>> com.sun.tools.xjc.generator.bean.field.DefaultFieldRenderer.generate(DefaultFieldRenderer.java:79)
>>    [java]           at
>>
>> com.sun.tools.xjc.generator.bean.BeanGenerator.generateFieldDecl(BeanGenerator.java:759)
>>    [java]           at
>>
>> com.sun.tools.xjc.generator.bean.BeanGenerator.generateClassBody(BeanGenerator.java:540)
>>    [java]           at
>>
>> com.sun.tools.xjc.generator.bean.BeanGenerator.<init>(BeanGenerator.java:243)
>>    [java]           at
>>
>> com.sun.tools.xjc.generator.bean.BeanGenerator.generate(BeanGenerator.java:161)
>>    [java]           at
>> com.sun.tools.xjc.model.Model.generateCode(Model.java:286)
>>    [java]           at
>>
>> com.sun.tools.xjc.api.impl.s2j.SchemaCompilerImpl.bind(SchemaCompilerImpl.java:252)
>>    [java]           at
>>
>> com.sun.tools.xjc.api.impl.s2j.SchemaCompilerImpl.bind(SchemaCompilerImpl.java:85)
>>    [java]           at
>>
>> org.apache.cxf.tools.wsdlto.databinding.jaxb.JAXBDataBinding.initialize(JAXBDataBinding.java:392)
>>    [java]           at
>>
>> org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.generateTypes(WSDLToJavaContainer.java:582)
>>    [java]           at
>>
>> org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.processWsdl(WSDLToJavaContainer.java:237)
>>    [java]           at
>>
>> org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.execute(WSDLToJavaContainer.java:137)
>>    [java]           at
>>
>> org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.execute(WSDLToJavaContainer.java:280)
>>    [java]           ... 4 more
>>    [java] Caused by: java.lang.NoSuchMethodException:
>> javax.xml.bind.annotation.XmlElementRef.required()
>>    [java]           at java.lang.Class.getDeclaredMethod(Class.java:1937)
>>    [java]           at
>>
>> com.sun.codemodel.TypedAnnotationWriter.invoke(TypedAnnotationWriter.java:108)
>>    [java]           ... 23 more
>>
>> -----------------------------------------------------------------------------------------
>>
>> /*Here is wsdlToJava args:*/
>>
>>
>> -------------------------------------------------------------------------------
>> <java classname="org.apache.cxf.tools.wsdlto.WSDLToJava" fork="true">
>> <arg value="-client"/>
>> <arg value="-validate" />
>> <arg value="-verbose"/>
>> <arg value="-d"/>
>> <arg value="@{src.dir}" />
>> <arg value="@{wsdl.dir}/@{wsdl.file}"/>
>>
>> <classpath>
>> <fileset dir="..//lib">
>> <include name="**/*.jar" />
>> </fileset>
>> </classpath>
>> </java>
>> </do>
>> </bi:for.java.project>
>>
>> -------------------------------------------------------------------------------
>>
>> /
>> *We are using following jar versions in lib folder:*/
>>
>> ---------------------------------------------------
>> <classpathentry kind="lib" path="lib/cxf-2.3.2.jar"/>
>> <classpathentry kind="lib" path="lib/cxf-xjc-boolean-2.3.2.jar"/>
>> <classpathentry kind="lib" path="lib/cxf-xjc-bug671-2.3.2.jar"/>
>> <classpathentry kind="lib" path="lib/cxf-xjc-dv-2.3.2.jar"/>
>> <classpathentry kind="lib" path="lib/cxf-xjc-ts-2.3.2.jar"/>
>> <classpathentry kind="lib" path="lib/jaxb-api-2.2.1.jar"/>
>> <classpathentry kind="lib" path="lib/jaxb-impl-2.2.1.1.jar"/>
>> <classpathentry kind="lib" path="lib/jaxb-xjc-2.2.1.1.jar"/>
>> ---------------------------------------------------
>>
>> /
>> *Please help us here.
>>
>> Thanks
>> Hari Hara*/
>>
>> --
>> View this message in context:
>> http://cxf.547215.n5.nabble.com/wsdl2java-tp5646464p5646464.html
>> Sent from the cxf-user mailing list archive at Nabble.com.
>
>
> ---------------------------------------------
> Freeman Fang
>
> FuseSource
> Email:[email protected]
> Web: fusesource.com
> Twitter: freemanfang
> Blog: http://freemanfang.blogspot.com
> http://blog.sina.com.cn/u/1473905042
> weibo: http://weibo.com/u/1473905042
>
>
>
>
>
>
>
>
>
>

Reply via email to