Je développe un microservice basé sur Spring Boot 1.5.13.
Au sein de ce microservice, je dois appeler un service web SOAP dont le wsdl m'a été fourni.
Je génère les classes clientes avec le plugin maven Apache CXF Codegen (goal wsdl2java).
Les appels fonctionnent bien, j'obtiens les réponses sans problème.
Je souhaiterai maintenant logger les messages soap d'entrée/sortie. Et là, je me heurte à un problème.
J'ai pu temporairement avoir les logs en ajoutant l'annotation suivante à mes classes générées:
@Features(features = "org.apache.cxf.feature.LoggingFeature")
Mais cette annotation est malheureusement écrasée à chaque nouvelle génération.
Je n'ai pas trouvé comment faire pour ajouter automatiquement cette annotation à chaque génération. Quelqu'un a une idée?
Pour info, voilà un extrait de mon pom.xml:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
<dependencies>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-spring-boot-starter-jaxws</artifactId>
<version>3.2.4</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-features-logging</artifactId>
<version>3.2.4</version>
</dependency>
<dependency>
<groupId>org.apache.cxf.xjc-utils</groupId>
<artifactId>cxf-xjc-runtime</artifactId>
<version>3.2.1</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-codegen-plugin</artifactId>
<executions>
<execution>
<id>generate-sources</id>
<phase>generate-sources</phase>
<goals>
<goal>wsdl2java</goal>
</goals>
<configuration>
<disableDependencyScan>true</disableDependencyScan>
<disableDirectoryScan>true</disableDirectoryScan>
<defaultOptions>
<markGenerated>true</markGenerated>
<validateWsdl>true</validateWsdl>
<xjcargs>
<xjcarg>-Xts:style:org.apache.commons.lang3.builder.ToStringStyle.JSON_STYLE</xjcarg>
</xjcargs>
</defaultOptions>
<wsdlOptions>
<wsdlOption>
<wsdl>${basedir}/src/main/resources/wsdl/monservice.wsdl</wsdl>
<wsdlLocation>classpath:wsdl/monservice.wsdl</wsdlLocation>
<extraargs>
<extraarg>-verbose</extraarg>
</extraargs>
</wsdlOption>
</wsdlOptions>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build> |
Partager