Date et web service

Résolu
luxior1 Messages postés 8 Date d'inscription mardi 1 juillet 2008 Statut Membre Dernière intervention 20 octobre 2011 - 7 août 2008 à 14:08
luxior1 Messages postés 8 Date d'inscription mardi 1 juillet 2008 Statut Membre Dernière intervention 20 octobre 2011 - 20 août 2008 à 10:55
Bonjour,

j'ai un problème lors de l'utilisation d'un web service.

en entrée, je fournie une date en paramêtre. Pourtant les collègues qui fournissent le service ne l'on pas dans le flux d'arrivé . Les autres données autres que dates par contre sont bien présentes dans le flux d'arrivée.

si quelqu'un aurai une petite idée qui pourrait m'aider, ce serait sympa.
merci d'avance.

7 réponses

luxior1 Messages postés 8 Date d'inscription mardi 1 juillet 2008 Statut Membre Dernière intervention 20 octobre 2011
20 août 2008 à 10:55
Enfin nous avons trouvé une solution. Je vous la communique au cas où cela puisse vous aider un jour.
Au fur a mesure de l'étude de l'erreur il devenait évident que le programme n'y était pas pour grand chose. Il semble que ce soit le module de liaison et sérialisation des informations qui n’arrivait pas a gérer la traduction des types Date. La solution la plus simple a été de le forcer à traduire les dates en chaine de caractères.

la manipulation suivante a donc été effectuée:
<ol style="MARGIN-TOP: 0pt" type="1"><li class="MsoNormal" style="MARGIN: 0pt; mso-list: l2 level1 lfo3; tab-stops: list 36.0pt">Ajoutez au fichier xxx.xsd</li></ol>  <xs:simpleType name="date"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /??>

    <xs:restriction base="xs:string">

      <xs:maxLength value="10" />

    </xs:restriction>

  </xs:simpleType>

 

<ol style="MARGIN-TOP: 0pt" type="1" start="2"><li class="MsoNormal" style="MARGIN: 0pt; mso-list: l2 level1 lfo3; tab-stops: list 36.0pt">Remplacer toutes les définitions de dates xs:date par ns5:date, exemple : </li></ol><xs:element minOccurs="0" name="dateEffet" type="xs:date" />

remplacé par

<xs:element minOccurs="0" name="dateEffet" type="ns5:date" />

 

<ol style="MARGIN-TOP: 0pt" type="1" start="3"><li class="MsoNormal" style="MARGIN: 0pt; mso-list: l2 level1 lfo3; tab-stops: list 36.0pt">dans le code VB.NET affectez :</li></ol>si cr est votre objet controlerRisque

cr.contexte.contrat.dateEffet = "2008-09-31"
3
gillardg Messages postés 3275 Date d'inscription jeudi 3 avril 2008 Statut Membre Dernière intervention 14 septembre 2014 2
7 août 2008 à 14:25
si tu nous donnais plus de précisions , on aurait peut être une chance de pouvoir t'aider
par exemple : De quel WebService parles tu ?

bonjour chez vous!
< body>
0
luxior1 Messages postés 8 Date d'inscription mardi 1 juillet 2008 Statut Membre Dernière intervention 20 octobre 2011
7 août 2008 à 15:04
Une entreprise partenaire me fournit un webservice: GestionContratAutoService.wsdl
Ce service est fournit par un server Apache Axis2 ADB et dévellopé en Java.
De mon coté, j'utilise un client ASP.NET soutenu par le VB.NET (2.0) pour utiliser leur service. Notre server est un server Windows 2000.

pour fournir les parametres d'entrées, nos partenaires mettent a notre disposition un ensemble des classes 'contenaire' où renseigner les champs définissant notre demande.
3 de ces champs sont des dates, sont renseignées mais n'arrivent pas à leur serveur. Les autres données de ces classes 'container' autres que des dates arrivent au webservice sans problème (les objets sont donc bien initialisé).

Il peut être interessant de savoir que pour un autre webservice du meme partenaire, ne date est aussi nécessaire en parametre d'entree et cela fonctionne (les technilogies logicielles sont donc capable d'echanger des dates entre elles).
0
gillardg Messages postés 3275 Date d'inscription jeudi 3 avril 2008 Statut Membre Dernière intervention 14 septembre 2014 2
7 août 2008 à 15:20
ça m'en dit pas plus je sais pas essayer donc je sais pas t'aider mais regrde le format de tes dates peut-être simplement des guillemets"" ou # ou alors changer les / en -

bonjour chez vous!
< body>
0

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

Posez votre question
luxior1 Messages postés 8 Date d'inscription mardi 1 juillet 2008 Statut Membre Dernière intervention 20 octobre 2011
7 août 2008 à 16:02
merci c'est gentil,
j'ai essaye plusieur format:
- eux nécessite le format anglais: YYYY-MM-DD et je fournie du Francais DD-MM-YYYY.
- les séparateurs: eux veulent des '-' et j'utilise des '/'.
comme je l'ai dis dans un cas ca passe et dans l'autre non :( .
biensur dans le cas qui passe pas, j'ai essayer les formats anglais et francais ainsi que les différents séparateurs.
0
gillardg Messages postés 3275 Date d'inscription jeudi 3 avril 2008 Statut Membre Dernière intervention 14 septembre 2014 2
7 août 2008 à 16:06
es tu sur que c'est pas un string qu'il faut?

bonjour chez vous!
< body>
0
luxior1 Messages postés 8 Date d'inscription mardi 1 juillet 2008 Statut Membre Dernière intervention 20 octobre 2011
7 août 2008 à 16:17
oui sur
le type définit dans les fichier wsdl et xsd est 'date'
par contre lors de la programmation VB.NET j'écris 'cr.contexte.contrat.dateEffet = "01/08/2008"
' et le cast se fait automatiquement par le language.
0
Rejoignez-nous