Webservice C# et client Jdevelopper URGENT

Résolu
cs_kmikaz Messages postés 34 Date d'inscription vendredi 22 mars 2002 Statut Membre Dernière intervention 2 mai 2006 - 28 nov. 2005 à 19:49
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 - 29 nov. 2005 à 11:15
Salut a tous,

je dois developper un webservice en c# pour des clients qui sont
developpés sous JDevelopper 9. Le probleme c'est que j'ai une signature
de méthode unique qui doit prendre en parametre un message soap et
retourné un message soap. Comment je fais ca en c#????

Quand je regarde la structure des messages que les clients java peuvent
envoyer, il s'agit ni plus ni moins que de fichiers xml simple a qui
ils souhaiterait faire passer la barrière vers mon serveur Windows.
Comment dois je declarer le paramètre unique de la methode qui prend
ces fichiers??

Est il possible de déclarer simplement un XmlDocument comme paramètre?? Le client Java peut il gérer ça?

Urgent!!

11 réponses

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
29 nov. 2005 à 10:55
euh... objectivement... je dirais que l'approche microsoft est plus simple...

Sébastien FERRAND
[MVP C#]
3
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
29 nov. 2005 à 09:00
houla... je crois que tu t'embrouille un peu avec les WebServices.

Résumons un peu.
Un WebService est un service accessible depuis l'Internet (ou Intranet) qui expose une ou plusieurs méthode.
Ce WebService peut être programmé dans n'importe quel langage et/ou technologie du moment qu'il respecte les spécifications.

Par exemple, tu peux avoir un WebService en C# et l'utiliser en Java ou l'inverse.

Prenons par exemple la méthode "GetUserInfo" : (en C#)

[WebMethod]
public UserInfo GetUserInfo( string userID ) ;

sa signature SOAP sera :

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetUserInfo xmlns="http://serveur.com/WebService.asmx">
string
</GetUserInfo>
</soap:Body>
</soap:Envelope>

Sébastien FERRAND
[MVP C#]
0
cs_kmikaz Messages postés 34 Date d'inscription vendredi 22 mars 2002 Statut Membre Dernière intervention 2 mai 2006
29 nov. 2005 à 09:54
nop,

Le webservice je connais bien cher ami. Ce qui est nouveau pour moi
c'est que je voudrais savoir quel parametre ma méthode doit exposer
pour que je puisse y recevoir un fichier xml et le recrire sur le
disque de mon serveur puis le parser par un autre process.

Je me suis peut être mal exprimé. Entre autre je ne veux pas utiliser
des attachements DIME, est ce qu'il y a une autre méthode pour que
exposer une méthode avec un seul parametre et qui y recevra n'importe
quel fichier xml?
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
29 nov. 2005 à 10:09
tu veux recevoir le contenu du fichier ?

si c'est le cas, un simple string suffira pour le passer en paramètre à ta méthode.

tu pourras ensuite le traiter en utilisant un XmlDocument ou avec des requetes XPath

Sébastien FERRAND
[MVP C#]
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_kmikaz Messages postés 34 Date d'inscription vendredi 22 mars 2002 Statut Membre Dernière intervention 2 mai 2006
29 nov. 2005 à 10:24
Ou si tu veut , je peux dire que je veux ecrire une methode de
webservice qui recoit n'importe quel message SOAP et le traite. Comment
est ce que je peux faire cela? A quel paramètre cela correspond dans
une webmethod
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
29 nov. 2005 à 10:30
le problème c'est que tu es cross-platform (Java - .net) donc tu n'as pas d'autre choix que d'utiliser un string (en tout cas, je n'en vois pas d'autre)...

ta WebMethod devra par conséquent diséqué le message soap et le traiter.

Sébastien FERRAND
[MVP C#]
0
cs_kmikaz Messages postés 34 Date d'inscription vendredi 22 mars 2002 Statut Membre Dernière intervention 2 mai 2006
29 nov. 2005 à 10:41
Donc si je comprend bien, il me suffira de mettre un string en
parametre et derrière le remettre dans un document xml puis le parser.

Mais j'ai peur que nous n'arrivions vite à un probleme de taille avec les fichiers xml
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
29 nov. 2005 à 10:43
mouaip... mais bon... je doute que tu transmettes à ton webservice des messages soap de 5Mo !
et si c'est le cas... c'est que tu as un problème d'optimisation.

Sébastien FERRAND
[MVP C#]
0
cs_kmikaz Messages postés 34 Date d'inscription vendredi 22 mars 2002 Statut Membre Dernière intervention 2 mai 2006
29 nov. 2005 à 10:50
Merci,

Je vais explorer cette piste voir. Mais franchement est ce JAva qui est
pas souple ou c'est microsoft wu facilite beaucoup les choses

:-)
0
cs_kmikaz Messages postés 34 Date d'inscription vendredi 22 mars 2002 Statut Membre Dernière intervention 2 mai 2006
29 nov. 2005 à 11:11
Merci sebastien,

As tu un bout de code qui charge un string dans un document xml et permet de naviguer dedans?

Je eux essayer xmlTextReader avec stringReader.
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
29 nov. 2005 à 11:15
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml( taStringXmlValide );

Sébastien FERRAND
[MVP C#]
0
Rejoignez-nous