Mantis

probleme avec le WSDL de mantisconnect

Posted by the-genius 
probleme avec le WSDL de mantisconnect
January 22, 2009 06:07PM
Bonjour,

Je dois accéder aux différentes fonctions de mantis via web Services. Pour situer le contexte, j'utilise un bus ESB (Mule) qui doit enregistrer des informations dans mantis via web services. Pour cela j'ai besoin d'utiliser le schéma WSDL de mantis connect. Pour mes tests j'ai utilisé soap ui. Jusque là, tout fonctionne parfaitement.

Pour accéder au WSDL depuis Mule j'utilise le framework Apache CXF. Je rencontre un problème au niveau du type Array définit dans le WSDL. Je n'arrive donc pas à acccéder au web services.

Voici mon message d'erreur :

Exception stack is:
1. undefined simple or complex type 'SOAP-ENC:Array' (org.xml.sax.SAXParseException)
com.sun.xml.xsom.impl.parser.ParserContext$1:140 (null)
2. Error compiling schema from WSDL at {[localhost]}: undefined simple or complex type 'SOAP-ENC:Array' (java.lang.RuntimeException)
org.apache.cxf.endpoint.dynamic.DynamicClientFactory$InnerErrorListener:493 (null)
3. Initialisation Failure: Error compiling schema from WSDL at {[localhost]}: undefined simple or complex type 'SOAP-ENC:Array' (org.mule.retry.RetryPolicyExhaustedException)
org.mule.retry.policies.AbstractPolicyTemplate:88 (http://www.mulesource.org/docs/site/current2/apidocs/org/mule/retry/RetryPolicyExhaustedException.html)
********************************************************************************
Root Exception stack trace:
org.xml.sax.SAXParseException: undefined simple or complex type 'SOAP-ENC:Array'
at com.sun.xml.xsom.impl.parser.ParserContext$1.reportError(ParserContext.java:140)
at com.sun.xml.xsom.impl.parser.NGCCRuntimeEx.reportError(NGCCRuntimeEx.java:134)
at com.sun.xml.xsom.impl.parser.DelayedRef.resolve(DelayedRef.java:89)
at com.sun.xml.xsom.impl.parser.DelayedRef.run(DelayedRef.java:64)
at com.sun.xml.xsom.impl.parser.ParserContext.getResult(ParserContext.java:95)
at com.sun.xml.xsom.parser.XSOMParser.getResult(XSOMParser.java:190)
at com.sun.tools.xjc.ModelLoader.createXSOM(ModelLoader.java:519)
at com.sun.tools.xjc.api.impl.s2j.SchemaCompilerImpl.bind(SchemaCompilerImpl.java:232)
at com.sun.tools.xjc.api.impl.s2j.SchemaCompilerImpl.bind(SchemaCompilerImpl.java:85)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:187)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:165)
at org.mule.transport.cxf.wsdl.CxfWsdlMessageDispatcher.createClient(CxfWsdlMessageDispatcher.java:99)
at org.mule.transport.cxf.wsdl.CxfWsdlMessageDispatcher$1.initialize(CxfWsdlMessageDispatcher.java:72)
at org.mule.transport.cxf.wsdl.CxfWsdlMessageDispatcher.doConnect(CxfWsdlMessageDispatcher.java:85)
at org.mule.transport.AbstractConnectable$1.doWork(AbstractConnectable.java:204)
at org.mule.retry.policies.AbstractPolicyTemplate.execute(AbstractPolicyTemplate.java:51)
at org.mule.transport.AbstractConnectable.connect(AbstractConnectable.java:197)
at org.mule.transport.AbstractMessageDispatcher.send(AbstractMessageDispatcher.java:163)
at org.mule.transport.AbstractConnector.send(AbstractConnector.java:1929)
at org.mule.endpoint.DefaultOutboundEndpoint.send(DefaultOutboundEndpoint.java:77)
at org.mule.DefaultMuleSession.sendEvent(DefaultMuleSession.java:327)
at org.mule.DefaultMuleSession.sendEvent(DefaultMuleSession.java:213)
at org.mule.routing.outbound.AbstractOutboundRouter$2.doInTransaction(AbstractOutboundRouter.java:152)
at org.mule.transaction.TransactionTemplate.execute(TransactionTemplate.java:99)
at org.mule.routing.outbound.AbstractOutboundRouter.send(AbstractOutboundRouter.java:159)
at org.mule.routing.outbound.ChainingRouter.route(ChainingRouter.java:71)
at org.mule.routing.outbound.DefaultOutboundRouterCollection$1.doInTransaction(DefaultOutboundRouterCollection.java:64)
at org.mule.transaction.TransactionTemplate.execute(TransactionTemplate.java:45)
at org.mule.routing.outbound.DefaultOutboundRouterCollection.route(DefaultOutboundRouterCollection.java:69)
at org.mule.service.AbstractService.dispatchToOutboundRouter(AbstractService.java:878)
at org.mule.model.seda.SedaService.dispatchToOutboundRouter(SedaService.java:513)
at org.mule.model.seda.SedaService$ComponentStageWorker.run(SedaService.java:536)
at org.mule.work.WorkerContext.run(WorkerContext.java:310)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
at java.lang.Thread.run(Unknown Source)

Egalement, j'ai tenté d'utilisé Axis2 avec son utilitaire WSDL2Java, afin d'obtenir un client que je pourrai utiliser comme alternative. Egalement j'obtient une erreur au niveau du type Array. Voici le message :

org.apache.axis2.schema.SchameCompilationException : can not find type {[schemas.xmlsoap.org]}Array from the parent schema [futureware.biz.mantisconnect]

Voici je ne sais pas si c'est un problème connu? Comment faites-vous pour appelé le web services de mantis connect? Est-il envisageable de modifier le wsdl fournit par mantis?

Merci beaucoup

Bertrand
Re: probleme avec le WSDL de mantisconnect
January 23, 2009 04:13PM
j'ai trouvé, il faut utiliser Axis au lieu de CXF
Sorry, only registered users may post in this forum.

Click here to login



Online Users

Guests: 3
Record Number of Users: 1 on April 02, 2023
Record Number of Guests: 115 on November 09, 2023
Top Users
Hébergeur : Morinie.Fr