Probleme Webservice serialisation AXIS --> Client .Net C# - C#/.NET managed - Programmation
Marsh Posté le 31-07-2007 à 21:47:50
déjà pas besoin d'utiliser wsdl.exe
tu créer une WebRéférence et il créara tout pour toi. Essaye déjà comme cela.
moi perso, je n'ai jamais eu de prob avec les objets complexes entre AXIS et .NET.
Maintenant, si ça passe coté java, ça doit arrivé normalement sans trop de problème coté .NET...
Sinon, va faloir faire une désérialisation manuelle en implémentant l'interface ISerializable
Marsh Posté le 01-08-2007 à 09:13:39
J'ai besoin de wsdl.exe car en intégrant le webservice et tant que référence web, ces méthodes me retournent un objet ayant la valeur null (J'étais parti sur cela aussi au début). En l'implémentant dans une classe, j'ai la possibilité de modifier quelques valeurs pour avancer.
Les résultats de cette recherche sont les suivantes :
- Les méthodes issues de la classe générée me retournait la même valeur null, en ajoutant "Form = System.Xml.Schema.XmlSchemaForm.Unqualified", cela m'instancie un objet mais les valeurs ne sont pas affectées.
- Sur les rares forums parlant du sujet il 'agirait d'un problème de namespace, j'ai essayé plein de combinaison sans succès.
- Si je retourne le type objet au lieu de VersionInfoResponse, je reçoit un tableau de xmlnodes, chacun contenant les valeurs des variables à affecter. Je reçois donc bien une réponse du web service, mais la sérialisation pose problème.
Le wsdl est à votre diposition si vous voulez faire des essais :
http://cattest.tecdoc.net/pegasus- [...] CatWL?wsdl
Merci.
Marsh Posté le 01-08-2007 à 21:23:10
tu pourrais poster la classe que tu tentes de passer sur le réseau? (ton code java, ou tu code C++). Enfin, l'objet que tu envoie depuis ton WebService. Le code de celui-ci.
De plus, ton WS, il est écrit en quoi? tu génères ton WSDL avec quoi? etc...
Marsh Posté le 31-07-2007 à 12:12:14
Bonjour à tous,
Je doit consommer, dans une page asp .net en c#, un webservice java (AXIS) qui propose plusieurs méthodes demandant en paramètre et retournant en réponse, des objets complexes, issue du wsdl de ce webservice.
J'utilise visual studio 2005, j'ai donc intégrer ce webservice et créant une classe avec le programme wsdl.exe. Je retrouve dans la classe générée les objets et les méthodes proposées par ce webservice.
Une des méthodes ne demande pas de paramètre et retourne un entier, j'arrive à recevoir une réponse correcte, donc les échanges fonctionnent.
En revanche les autres méthodes qui demandent et retournent des paramètres de type complexe, ne fonctionnent pas.
En fait, il n'y a pas d'erreur de générée, mais l'objet retourné est instancié mais ces variables ne sont pas affectées.
Voici le lien du webservice utilisé, la méthode sur laquelle je fais mes essais est getPegasusVersionInfo() :
http://cattest.tecdoc.net/pegasus- [...] CatWL?wsdl
le code appelant la méthode :
Voici mes objets :
Merci pour votre aide.
Message édité par STARIS79 le 01-08-2007 à 09:14:02