Comment construire un WSDL à l'aide de Maven

Je suis à la recherche pour remplacer fourni Ant avec Maven. Je connais (mais je n'ai pas utilisé) ant exécuter, et je préfère pas trop.

Pour faire une longue histoire courte, NetSuite offre un wsdl à utiliser lors de la prise des appels de service web againsts son ERP, offre et actuellement, je utiliser leurs ant pour générer les classes de proxy à partir du wsdl. (les exemples d'applications, wsdl et patché axe disponible ici)

Le problème que j'ai, c'est que la tâche ant utilise une version modifiée de l'axe 1.4 (et l'appui aux bibliothèques, plusieurs de qui sont ~7 ans ) et j'aimerais mettre en œuvre cette wsdl à l'aide de bibliothèques qui sont facilement disponibles à partir d'un centre repo maven, et de préférence actuelle.

Quelqu'un peut-il m'indiquer où je dois à la recherche d'une solution qui fonctionne?

Pour tous ceux qui ont besoin de savoir: j'ai tenté de générer avec axis2 et il jette l'exception suivante:

timeException: Element QName is null for ExceededRequestSizeFault!
at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:293)
at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:35)
at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:24)
Caused by: org.apache.axis2.wsdl.codegen.CodeGenerationException: java.lang.RuntimeException: Element QName is null for ExceededRequestSizeFault!
at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.emitSkeleton(AxisServiceBasedMultiLanguageEmitter.java:1451)
at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:275)
... 2 more
Caused by: java.lang.RuntimeException: Element QName is null for ExceededRequestSizeFault!
at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.getFaultParamElements(AxisServiceBasedMultiLanguageEmitter.java:
2925)
at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.getFaultElement(AxisServiceBasedMultiLanguageEmitter.java:2844)
at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.generateMethodElement(AxisServiceBasedMultiLanguageEmitter.java:
2366)
at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.loadOperations(AxisServiceBasedMultiLanguageEmitter.java:2242)
at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.createDOMDocumentForSkeleton(AxisServiceBasedMultiLanguageEmitte
r.java:2156)
at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.writeSkeleton(AxisServiceBasedMultiLanguageEmitter.java:2082)
at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.emitSkeleton(AxisServiceBasedMultiLanguageEmitter.java:1408)
... 3 more

Des points de Bonus si ses une solution testée avec une récente NetSuite WSDL.

OriginalL'auteur Robert H | 2013-03-19