jaxb2-plugin 6.1 and hjb 0.5.2 works OK!!!
but that is the max of both versions I could get.
java.lang.Error: java.lang.NoSuchMethodException:
com.sun.tools.xjc.reader.xmlschema.BGMBuilder.<init>()
at com.sun.tools.xjc.reader.Ring.get(Ring.java:111)
at com.sun.tools.xjc.model.CClassInfo.<init>(CClassInfo.java:164)
at
org.jvnet.hyperjaxb3.ejb.strategy.model.base.WrapCollectionHeteroReference.process(WrapCollectionHeteroReference.java:77)
at
org.jvnet.hyperjaxb3.ejb.strategy.model.base.DefaultProcessPropertyInfos$PropertyClassifier.onCollectionHeteroReference(DefaultProcessPropertyInfos.java:383)
at
org.jvnet.hyperjaxb3.ejb.strategy.model.base.DefaultProcessPropertyInfos$PropertyClassifier.onCollectionHeteroReference(DefaultProcessPropertyInfos.java:104)
at
org.jvnet.hyperjaxb3.xjc.model.CClassifyingVisitor.onHeteroReference(CClassifyingVisitor.java:283)
at
org.jvnet.hyperjaxb3.xjc.model.CClassifyingVisitor.onReference(CClassifyingVisitor.java:160)
at
com.sun.tools.xjc.model.CReferencePropertyInfo.accept(CReferencePropertyInfo.java:165)
at
org.jvnet.hyperjaxb3.ejb.strategy.model.base.DefaultProcessPropertyInfos.process(DefaultProcessPropertyInfos.java:75)
at
org.jvnet.hyperjaxb3.ejb.strategy.model.base.DefaultProcessPropertyInfos.process(DefaultProcessPropertyInfos.java:49)
at
org.jvnet.hyperjaxb3.ejb.strategy.model.base.DefaultProcessPropertyInfos.process(DefaultProcessPropertyInfos.java:23)
at
org.jvnet.hyperjaxb3.ejb.strategy.model.base.DefaultProcessClassInfo.process(DefaultProcessClassInfo.java:17)
at
org.jvnet.hyperjaxb3.ejb.strategy.model.base.DefaultProcessClassInfo.process(DefaultProcessClassInfo.java:12)
at
org.jvnet.hyperjaxb3.ejb.strategy.model.base.DefaultProcessModel.process(DefaultProcessModel.java:33)
at
org.jvnet.hyperjaxb3.ejb.strategy.model.base.DefaultProcessModel.process(DefaultProcessModel.java:20)
at
org.jvnet.hyperjaxb3.ejb.plugin.EjbPlugin.processModel(EjbPlugin.java:292)
at
org.jvnet.hyperjaxb3.ejb.plugin.EjbPlugin.run(EjbPlugin.java:159)
at com.sun.tools.xjc.model.Model.generateCode(Model.java:290)
at org.jvnet.jaxb2.maven2.XJC2Mojo.runXJC(XJC2Mojo.java:1130)
at org.jvnet.jaxb2.maven2.XJC2Mojo.execute(XJC2Mojo.java:718)
at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:499)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:478)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at
org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: java.lang.NoSuchMethodException:
com.sun.tools.xjc.reader.xmlschema.BGMBuilder.<init>()
at java.lang.Class.getConstructor0(Class.java:2706)
at java.lang.Class.getDeclaredConstructor(Class.java:1985)
at com.sun.tools.xjc.reader.Ring.get(Ring.java:100)
... 37 more
pom looks like
<dependencies>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.1.6</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>3.3.1.ga</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jvnet.hyperjaxb3</groupId>
<artifactId>hyperjaxb3-ejb-plugin</artifactId>
<version>0.5.3</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.6.1</version>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<extension>true</extension>
<plugins>
<plugin>
<groupId>org.jvnet.hyperjaxb3</groupId>
<artifactId>hyperjaxb3-ejb-plugin</artifactId>
<version>0.5.3</version>
</plugin>
</plugins>
<args>
<arg>-Xequals</arg>
<arg>-XhashCode</arg>
<arg>-Xhyperjaxb3-ejb</arg>
</args>
<!-- Changes the default schema directory -->
<schemaDirectory>src/main/resources</schemaDirectory>
<schemaIncludes>
<include>ws-humantask-api.xsd</include>
</schemaIncludes>
<schemaExcludes>
<exclude>one/two/*.xsd</exclude>
</schemaExcludes>
<bindingDirectory>src/main/resources</bindingDirectory>
<bindingIncludes>
<include>*.xjb</include>
</bindingIncludes>
<bindingExcludes>
<exclude>one/two/*.xjb</exclude>
</bindingExcludes>
</configuration>
</plugin>
</plugins>
</build>
unfortunatley I'm working on HumanTask api =(
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns="
http://www.example.org/WS-HT/api"
xmlns:htd="
http://www.example.org/WS-HT"
xmlns:xsd="
http://www.w3.org/2001/XMLSchema"
targetNamespace="
http://www.example.org/WS-HT/api"
elementFormDefault="qualified" blockDefault="#all">
<!-- other namespaces -->
<!--xsd:import namespace="
http://www.w3.org/XML/1998/namespace"
schemaLocation="
http://www.w3.org/2001/xml.xsd" /-->
<xsd:import namespace="
http://www.w3.org/XML/1998/namespace"
schemaLocation="xml.xsd" />
<xsd:import namespace="
http://www.example.org/WS-HT"
schemaLocation="ws-humantask.xsd" />
<!-- data types for attachment operations -->
<xsd:element name="attachmentInfo" type="tAttachmentInfo" />
<xsd:complexType name="tAttachmentInfo">
<xsd:sequence>
<xsd:element name="name" type="xsd:string" />
<xsd:element name="accessType" type="xsd:string" />
<xsd:element name="contentType" type="xsd:string" />
<xsd:element name="attachedAt" type="xsd:dateTime" />
<xsd:element name="attachedBy" type="htd:tUser" />
<xsd:any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="attachment" type="tAttachment" />
<xsd:complexType name="tAttachment">
<xsd:sequence>
<xsd:element ref="attachmentInfo" />
<xsd:element name="value" type="xsd:anyType" />
</xsd:sequence>
</xsd:complexType>
<!-- data types for comments -->
<xsd:element name="comment" type="tComment" />
<xsd:complexType name="tComment">
<xsd:sequence>
<xsd:element name="addedAt" type="xsd:dateTime" />
<xsd:element name="addedBy" type="htd:tUser" />
<xsd:element name="text" type="xsd:string" />
<xsd:any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<!-- data types for simple query operations -->
<xsd:element name="taskAbstract" type="tTaskAbstract" />
<xsd:complexType name="tTaskAbstract">
<xsd:sequence>
<xsd:element name="id" type="xsd:string" />
<xsd:element name="taskType" type="xsd:string" />
<xsd:element name="name" type="xsd:QName" />
<xsd:element name="status" type="tStatus" />
<xsd:element name="priority" type="xsd:nonNegativeInteger"
minOccurs="0" />
<xsd:element name="createdOn" type="xsd:dateTime" />
<xsd:element name="activationTime" type="xsd:dateTime"
minOccurs="0" />
<xsd:element name="expirationTime" type="xsd:dateTime"
minOccurs="0" />
<xsd:element name="isSkipable" type="xsd:boolean" minOccurs="0" />
<xsd:element name="hasPotentialOwners" type="xsd:boolean"
minOccurs="0" />
<xsd:element name="startByExists" type="xsd:boolean"
minOccurs="0" />
<xsd:element name="completeByExists" type="xsd:boolean"
minOccurs="0" />
<xsd:element name="presentationName" type="tPresentationName"
minOccurs="0" />
<xsd:element name="presentationSubject"
type="tPresentationSubject" minOccurs="0" />
<xsd:element name="renderingMethodExists" type="xsd:boolean" />
<xsd:element name="hasOutput" type="xsd:boolean" minOccurs="0" />
<xsd:element name="hasFault" type="xsd:boolean" minOccurs="0" />
<xsd:element name="hasAttachments" type="xsd:boolean"
minOccurs="0" />
<xsd:element name="hasComments" type="xsd:boolean"
minOccurs="0" />
<xsd:element name="escalated" type="xsd:boolean" minOccurs="0" />
<xsd:any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="task" type="tTask" />
<xsd:complexType name="tTask">
<xsd:sequence>
<xsd:element name="id" type="xsd:string" />
<xsd:element name="taskType" type="xsd:string" />
<xsd:element name="name" type="xsd:QName" />
<xsd:element name="status" type="tStatus" />
<xsd:element name="priority" type="xsd:nonNegativeInteger"
minOccurs="0" />
<xsd:element name="taskInitiator" type="htd:tUser"
minOccurs="0" />
<xsd:element name="taskStakeholders"
type="htd:tOrganizationalEntity" minOccurs="0" />
<xsd:element name="potentialOwners"
type="htd:tOrganizationalEntity" minOccurs="0" />
<xsd:element name="businessAdministrators"
type="htd:tOrganizationalEntity" minOccurs="0" />
<xsd:element name="actualOwner" type="htd:tUser" minOccurs="0" />
<xsd:element name="notificationRecipients"
type="htd:tOrganizationalEntity" minOccurs="0" />
<xsd:element name="createdOn" type="xsd:dateTime" />
<xsd:element name="createdBy" type="xsd:string" minOccurs="0" />
<xsd:element name="activationTime" type="xsd:dateTime"
minOccurs="0" />
<xsd:element name="expirationTime" type="xsd:dateTime"
minOccurs="0" />
<xsd:element name="isSkipable" type="xsd:boolean" minOccurs="0" />
<xsd:element name="hasPotentialOwners" type="xsd:boolean"
minOccurs="0" />
<xsd:element name="startByExists" type="xsd:boolean"
minOccurs="0" />
<xsd:element name="completeByExists" type="xsd:boolean"
minOccurs="0" />
<xsd:element name="presentationName" type="tPresentationName"
minOccurs="0" />
<xsd:element name="presentationSubject"
type="tPresentationSubject" minOccurs="0" />
<xsd:element name="renderingMethodExists" type="xsd:boolean" />
<xsd:element name="hasOutput" type="xsd:boolean" minOccurs="0" />
<xsd:element name="hasFault" type="xsd:boolean" minOccurs="0" />
<xsd:element name="hasAttachments" type="xsd:boolean"
minOccurs="0" />
<xsd:element name="hasComments" type="xsd:boolean"
minOccurs="0" />
<xsd:element name="escalated" type="xsd:boolean" minOccurs="0" />
<xsd:element name="primarySearchBy" type="xsd:string"
minOccurs="0" />
<xsd:any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="tPresentationName">
<xsd:annotation>
<xsd:documentation>length-restricted string</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="64" />
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="tPresentationSubject">
<xsd:annotation>
<xsd:documentation>length-restricted string</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="254" />
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="tStatus">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="CREATED" />
<xsd:enumeration value="READY" />
<xsd:enumeration value="RESERVED" />
<xsd:enumeration value="IN_PROGRESS" />
<xsd:enumeration value="SUSPENDED" />
<xsd:enumeration value="COMPLETED" />
<xsd:enumeration value="FAILED" />
<xsd:enumeration value="ERROR" />
<xsd:enumeration value="EXITED" />
<xsd:enumeration value="OBSOLETE" />
</xsd:restriction>
</xsd:simpleType>
<!-- data types for advanced query operations -->
<xsd:element name="taskQueryResultSet" type="tTaskQueryResultSet" />
<xsd:complexType name="tTaskQueryResultSet">
<xsd:sequence>
<xsd:element name="row" type="tTaskQueryResultRow" minOccurs="0"
maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="tTaskQueryResultRow">
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element name="id" type="xsd:string" />
<xsd:element name="taskType" type="xsd:string" />
<xsd:element name="name" type="xsd:QName" />
<xsd:element name="status" type="tStatus" />
<xsd:element name="priority" type="xsd:nonNegativeInteger" />
<xsd:element name="taskInitiator"
type="htd:tOrganizationalEntity" />
<xsd:element name="taskStakeholders"
type="htd:tOrganizationalEntity" />
<xsd:element name="potentialOwners"
type="htd:tOrganizationalEntity" />
<xsd:element name="businessAdministrators"
type="htd:tOrganizationalEntity" />
<xsd:element name="actualOwner" type="htd:tUser" />
<xsd:element name="notificationRecipients"
type="htd:tOrganizationalEntity" />
<xsd:element name="createdOn" type="xsd:dateTime" />
<xsd:element name="createdBy" type="xsd:string" />
<xsd:element name="activationTime" type="xsd:dateTime" />
<xsd:element name="expirationTime" type="xsd:dateTime" />
<xsd:element name="isSkipable" type="xsd:boolean" />
<xsd:element name="hasPotentialOwners" type="xsd:boolean" />
<xsd:element name="startByExists" type="xsd:boolean" />
<xsd:element name="completeByExists" type="xsd:boolean" />
<xsd:element name="presentationName" type="tPresentationName" />
<xsd:element name="presentationSubject"
type="tPresentationSubject" />
<xsd:element name="presentationDescription" type="xsd:string" />
<xsd:element name="renderingMethodExists" type="xsd:boolean" />
<xsd:element name="hasOutput" type="xsd:boolean" />
<xsd:element name="hasFault" type="xsd:boolean" />
<xsd:element name="hasAttachments" type="xsd:boolean" />
<xsd:element name="hasComments" type="xsd:boolean" />
<xsd:element name="escalated" type="xsd:boolean" />
<xsd:element name="primarySearchBy" type="xsd:string" />
<xsd:any namespace="##other" processContents="lax" />
</xsd:choice>
</xsd:complexType>
</xsd:schema>