Salut à tous,

Voici mon pb, j'essayé de poster une requete à un service Web en HTTP. Tout se passe bien pour l'appel, mais lorsque je demande la réponse, j'ai une erreur : "Le serveur distant a retourné une erreur : (500) Erreur interne du serveur" ça me fait une belle jambe, non ?!


Voici le code qui l'appel le webservice
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
Dim mgWebRequest As HttpWebRequest
        Dim stringPost, stringResult As String
        Dim mgStreamWriter As StreamWriter
        Dim mgWebResponse As HttpWebResponse
        Dim mgStreamReader As StreamReader
        Dim m_xmld2 As New XmlDocument()
 
        Try
             mgWebRequest = CType(WebRequest.Create("https://...ReportService.asmx"), HttpWebRequest)
            mgWebRequest.Method = "POST"
 
            stringPost = "<?xml version=""1.0"" encoding=""utf-8"" ?>" & _
                            "<soap:Envelope xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"">" & _
                                "<soap:Header>" & _
                                    "<AdvertiserCredential xmlns=""http://.../1.0"">" & _
                                        "<Username>testaccount35</Username> " & _
                                        "<Password>yom4wv5g</Password> " & _
                                    "</AdvertiserCredential>" & _
                                    "<PartnerCredential xmlns=""http://.../1.0"">" & _
                                        "<Username>ibase</Username>" & _
                                        "<Password>gh_tflfd</Password>" & _
                                    "</PartnerCredential>" & _
                                "</soap:Header>" & _
                                "<soap:Body>" & _
                                    "<RequestReport xmlns=""http://.../1.0"">" & _
                                        "<request xsi:type=""ActivityOverviewReport"">" & _
                                            "<StartDate>2006-04-29T10:21:44.4467600+01:00</StartDate>" & _
                                            "<EndDate>2006-04-29T10:21:44.4467600+01:00</EndDate>" & _
                                        "</request>" & _
                                    "</RequestReport>" & _
                                "</soap:Body>" & _
                            "</soap:Envelope>"
 
            stringPost = HttpUtility.UrlEncode(stringPost)
 
            mgWebRequest.ContentLength = stringPost.Length
            mgWebRequest.ContentType = "application/x-www-form-urlencoded"
 
            mgStreamWriter = New StreamWriter(mgWebRequest.GetRequestStream())
            mgStreamWriter.Write(stringPost)
            mgStreamWriter.Flush()
            mgStreamWriter.Close()
 
            mgWebResponse = CType(mgWebRequest.GetResponse(), HttpWebResponse)
            mgStreamReader = New StreamReader(mgWebResponse.GetResponseStream())
 
            stringResult = mgStreamReader.ReadToEnd()
            mgStreamReader.Close()
 
            m_xmld2.LoadXml(stringResult)
Je passe par une requete HTTP pour éviter le emmerd.. avec les formats de date. Le web service Utilise la norme internotional (yyy-mm-jj) avec que VS utilise la norm US (mm-jj-yyyy).

donc au secours !!!!!!

Arnaud B.