8
votes

Jaxb Versions mixtes? Attribut «requis» non défini

IM générant des classes des fichiers WSDL avec Wsimport Maven Plugin @ Mule AnyPoint Studio 3.5 avec JDK 1.7_55

J'utilise JAXB 2.2.7 et supprimez la version 2.1.9 de Mule Libs et remplacés par 2.2.7. P>

Quand je compile, quelque chose fonctionne bien, mais d'autres, je prends cette erreur plusieurs fois: p> xxx pré>

J'ai essayé de créer un dossier endossé dans JDK et inclure. Les pots nécessaires, P>

Connaissez-vous un moyen d'éviter cette erreur ou de remplacer ce libs correctement? p>

i Inclure ces dépendances dans POM.XML P>

<plugin>
            <groupId>org.jvnet.jax-ws-commons</groupId>
            <artifactId>jaxws-maven-plugin</artifactId>
            <version>2.2.1</version>
            <executions>
                <execution>
                    <id>wsdl-AMANSequenceService-exec</id>
                    <goals>
                        <goal>wsimport</goal>
                    </goals>
                    <configuration>
                        <args>
                            <arg>-version</arg>
                            <arg>-B-nv</arg>
                            <arg>-Xdebug</arg>
                            <arg>-B-XautoNameResolution</arg>
                            <arg>-Xendorsed</arg>
                        </args>
                        <extension>true</extension>
                        <sourceDestDir>${basedir}/src/main/java</sourceDestDir>
                        <destDir>${basedir}/src/main/java</destDir>
                        <extension>true</extension>
                        <wsdlDirectory>${basedir}/src/main/resources/SICG/AMANSequenceService</wsdlDirectory>
                        <wsdlFiles>
                            <wsdlFile>AMANSequenceService.wsdl</wsdlFile>
                        </wsdlFiles>
                        <bindingFiles>
                            <bindingFile>${basedir}/src/main/resources/SICG/external/binding.xjb</bindingFile>
                        </bindingFiles>
                    </configuration>
                </execution>


3 commentaires

Quel est le chemin pour les pots endossés?


C: \ java \ jdk1.7.0_55 \ lib \ endossé \ jaxb-api-2.2.jar c: \ java \ jdk1.7.0_55 \ lib \ endossé \ jaxb-implt-2.2.7.jar c: \ java \ jdk1 .7.0_55 \ lib \ endossé \ jaxb-xjc-2.2.7.jar C: \ anypointStudio \ plugins \ org.mule.tooling.server.3.5.0_3.5. 0.201405141856 \ Mule \ lib \ endossé


Si vous savez un moyen de faire une reconstruction propre


4 Réponses :


2
votes

L'emplacement de vos bocaux approuvés est incorrect. Il devrait être:

% java_home% \ jre \ lib \ endossé

qui dans votre cas est:

c: \ java \ jdk1.7.0_55 \ jre \ lib \ endossé

Mettez les pots Jaxb ici, supprimez tous les autres et réessayez.


0 commentaires

4
votes

Nous pouvons fixer le comportement ci-dessus en remplaçant les pots suivants dans Dossier d'exécution du CE Mule CE (C: \ TOOnPointStudio \ plugins \ org.mule.tooling.server.3.5.0_3.5.0.201405141856 \ mule \ lib \ opt):

JAXB-API-2.1 avec JAXB-API-2.2.JAR

Jaxb-Impl-2.1.9 avec Jaxb-Impl-2.2.7.jar

JAXB-XJC-2.1.9 avec JAXB-XJC-2.2.7.JAR

Il serait utile que les développeurs de mulet ont mis à jour ces packages aux dernières distributions.


0 commentaires

1
votes

Ceci est pour les personnes qui trouvent cette vieille affichage des moteurs de recherche.

Je reçois le même message d'erreur dans un nouveau projet que j'ai créé à Eclipse. La solution était de: xxx


0 commentaires

1
votes

Dans le cas spécifique du mulet, si vous êtes bloqué avec Jaxb2.1, vous pouvez forcer Apache CXF WSDL2JAVA pour générer un code client compatible JAXB2.1

<defaultOptions>
  <frontEnd>jaxws21</frontEnd>
</defaultOptions>


1 commentaires

à la recherche de ça!