2011-03-14 1 views
4

en essayant depuis 2 jours pour obtenir Maven 3.0.3 + axe2-wsdl2code-maven-plugin 1.5.4 avec la liaison de données jaxbri pour fonctionner. Message d'erreur:Axis2 Liaison de données jaxbri + Maven: Les JAR JAX-B RI ne sont pas sur le chemin de classe

java.lang.RuntimeException: JAX-B RI JARs not on classpath 
    at org.apache.axis2.wsdl.codegen.extension.JAXBRIExtension.engage(JAXBRIExtension.java:78) 
    at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:224) 

POM:

... 
    <properties> 
     <axis2ReleaseVersion>1.5.4</axis2ReleaseVersion> 
     <axiomReleaseVersion>1.2.7</axiomReleaseVersion> 
     <wodenReleaseVersion>1.0M8</wodenReleaseVersion> 

    </properties> 

    <dependencies> 

     <dependency> 
      <groupId>org.apache.axis2</groupId> 
      <artifactId>axis2</artifactId> 
      <version>${axis2ReleaseVersion}</version> 
     </dependency> 

     <dependency> 
      <groupId>org.apache.ws.commons.axiom</groupId> 
      <artifactId>axiom-api</artifactId> 
      <version>${axiomReleaseVersion}</version> 
     </dependency> 

     <dependency> 
      <groupId>org.apache.ws.commons.axiom</groupId> 
      <artifactId>axiom-impl</artifactId> 
      <version>${axiomReleaseVersion}</version> 
     </dependency> 

     <dependency> 
      <groupId>org.apache.ws.commons.axiom</groupId> 
      <artifactId>axiom-dom</artifactId> 
      <version>${axiomReleaseVersion}</version> 
     </dependency> 

     <plugin> 
      <groupId>org.apache.axis2</groupId> 
      <artifactId>axis2-wsdl2code-maven-plugin</artifactId> 
      <version>1.5.4</version> 

      <configuration> 
       <generateServerSide>true</generateServerSide> 
       <generateServerSideInterface>true</generateServerSideInterface> 
       <generateAllClasses>true</generateAllClasses> 
       <!--<generateServicesXml>true</generateServicesXml> --> 
       <!--<allPorts>true</allPorts> --> 
       <!--<backwardCompatible>true</backwardCompatible> --> 
       <!--<unwrap>true</unwrap> --> 
      </configuration> 
      <executions> 
       <execution> 
        <goals> 
         <goal>wsdl2code</goal> 
        </goals> 
        <configuration> 
         <packageName>xyz</packageName> 
         <wsdlFile>${basedir}/src/main/resources/wsdl/Service.wsdl</wsdlFile> 
         <databindingName>jaxbri</databindingName> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 

Même en faisant des pots de JAXB-ri dans les dépendances ne fonctionne pas:

<dependency> 
    <groupId>org.apache.axis2</groupId> 
    <artifactId>axis2-jaxbri</artifactId> 
    <version>1.5.4</version> 
</dependency> 

<dependency> 
    <groupId>javax.xml.bind</groupId> 
    <artifactId>jaxb-api</artifactId> 
    <version>2.1</version> 
    <scope>system</scope> 
    <systemPath>${basedir}/src/main/resources/lib/jaxb-api-2.1.jar</systemPath> 
</dependency> 

<dependency> 
    <groupId>com.sun.xml.bind</groupId> 
    <artifactId>jaxb-impl</artifactId> 
    <version>2.1.7</version> 
    <scope>system</scope> 
    <systemPath>${basedir}/src/main/resources/lib/jaxb-impl-2.1.7.jar</systemPath> 
</dependency> 

<dependency> 
    <groupId>com.sun.tools</groupId> 
    <artifactId>jaxb1-xjc</artifactId> 
    <version>2.1.7</version> 
    <scope>system</scope> 
    <systemPath>${basedir}/src/main/resources/lib/jaxb-xjc-2.1.7.jar</systemPath> 
</dependency> 

Merci d'avance pour votre aide.

Répondre

10

Les plugins n'utilisent pas les dépendances du projet. Vous devez également ajouter axis2-jaxbri en tant que dépendance du plugin wsdl2code.

 <plugin> 
      <groupId>org.apache.axis2</groupId> 
      <artifactId>axis2-wsdl2code-maven-plugin</artifactId> 
      <version>1.5.4</version> 
      <executions> 
       <execution> 
        <goals> 
         <goal>wsdl2code</goal> 
        </goals> 
       </execution> 
      </executions> 
      <configuration> 
       <packageName>.....</packageName> 
       <wsdlFile>.....</wsdlFile> 
       <databindingName>jaxbri</databindingName> 
       <syncMode>sync</syncMode> 
       <generateTestcase>false</generateTestcase> 
      </configuration> 
      <dependencies> 
       <dependency> 
        <groupId>org.apache.axis2</groupId> 
        <artifactId>axis2-jaxbri</artifactId> 
        <version>1.5.4</version> 
       </dependency> 
      </dependencies> 
     </plugin> 
+0

Vous avez fait ma journée, c'était la solution. – user659206

Questions connexes