IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

[Vb.Net 2005] manipulation d'un fichier fixml


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de shadowmoon
    Homme Profil pro
    Expert technique et fonctionnel .Net
    Inscrit en
    Mai 2005
    Messages
    1 066
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Expert technique et fonctionnel .Net
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 066
    Par défaut [Vb.Net 2005] manipulation d'un fichier fixml
    J'essaye d'evoyer un fichier fixml vers un serveur nymex distant, pour cela, j'utilise le code suivant :

    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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
     
    Public Class GATEWAY
        Dim url As String = "https://www.blabla.com"
        Dim port As String = "443"
        Dim msg As String = "blabla"
        Dim user_id As String = "login"
        Dim user_pass As String = "mdp"
        Dim reqid As String
        Dim client As New WebClient()
        Dim request As String
        Dim myCredentials As New NetworkCredential(user_id, user_pass)
        Dim login As Boolean = False
        Dim logoff As Boolean = False
        Dim sw As StreamWriter
        Dim f_path As String = "C:\Documents and Settings\...\"
        Dim f_name As String = "test.xml"
        Dim XmlDoc As XmlDocument = New XmlDocument()
        Dim elemUserReq As XmlElement
     
    Function test()
     
            client.BaseAddress = url
            client.Credentials = myCredentials
     
            XmlDoc.LoadXml("<FIXML></FIXML>")
     
            XmlDoc.DocumentElement.SetAttribute("v", "4.4")
            XmlDoc.DocumentElement.SetAttribute("s", "20040109")
            XmlDoc.DocumentElement.SetAttribute("r", "20030618")
     
            elemUserReq = XmlDoc.CreateElement("UserReq")
     
            elemUserReq.SetAttribute("ReqID", get_reqid())
            elemUserReq.SetAttribute("UserReqTyp", "1")
            elemUserReq.SetAttribute("Username", user_id)
            elemUserReq.SetAttribute("Password", user_pass)
     
            XmlDoc.DocumentElement.AppendChild(elemUserReq)
     
            XmlDoc.Save(f_path + f_name)
     
            'client.UploadFile(url + ":" + port + msg, f_path + f_name)
     
            request = XmlDoc.ToString()
     
            client.UploadString(url + ":" + port + msg, request)
     
            dataStream = client.OpenRead(url + msg)
            'Open the stream using a StreamReader for easy access.
            reader = New StreamReader(dataStream)
            'Read the content.
            responseFromServer = reader.ReadToEnd()
            TextBox1.Text = responseFromServer
            reader.Close()
            dataStream.Close()
     
    End Function
     
        Function get_reqid() As String
            Return (user_id + System.DateTime.Now.TimeOfDay.Milliseconds.ToString())
        End Function
     
    Private Sub GATEWAY_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Me.test()
        End Sub
    End Class
    Que j'essaye de cette manière ou de la facon en commentaire j'ai le meme message d'erreur dans "responseFromServer" : "<reply><error code="0">General Exception:XML Parsing Exception:Error on line 1: Premature end of file.</error></reply>"

    quelqu'un sait comment arranger ca ?

    Le fichier Fixml semble clean, il est ouvert par internet explorer sans aucune erreur

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 37
    Par défaut
    Salut,
    Je ne sais pas si c'est une bonne piste mais tu as quoi à la premiere ligne de ton fichier xml?

  3. #3
    Membre éprouvé Avatar de shadowmoon
    Homme Profil pro
    Expert technique et fonctionnel .Net
    Inscrit en
    Mai 2005
    Messages
    1 066
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Expert technique et fonctionnel .Net
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 066
    Par défaut
    le fichier fixml créé est tout simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    <FIXML v="4.4" s="20040109" r="20030618">
      <UserReq ReqID="blabla274" UserReqTyp="1" Username="blabla" Password="blabla" />
    </FIXML>
    [edit] Pour etre plus précis, je chercher à faire la meme chose que le code java suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     httpRequestor.doXMLRequest(url, s2)
    dans lequel url est https://www.blabla.com:433/blabla et s2 est le fichier fixml transformé en string

  4. #4
    Membre éprouvé Avatar de shadowmoon
    Homme Profil pro
    Expert technique et fonctionnel .Net
    Inscrit en
    Mai 2005
    Messages
    1 066
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Expert technique et fonctionnel .Net
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 066
    Par défaut
    A force de chercher j'ai fini par trouver ce que je voualis faire en C#, je l'ai donc adapté en Vb .Net :

    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
    51
    52
     
     
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
     
            Dim file As String = create_xml_request()
     
            WebReq = WebRequest.Create(url + ":" + port + msg)
            WebReq.Method = "POST"
            WebReq.ContentType = "text/xml"
            Dim writer As New StreamWriter(WebReq.GetRequestStream())
            writer.WriteLine(GetTextFromXMLFile(file))
            writer.Close()
     
     
            WebRes = WebReq.GetResponse()
            'Open the stream using a StreamReader for easy access.
            Dim reader As New StreamReader(WebRes.GetResponseStream())
            'Read the content.
            Dim responseFromServer As String = reader.ReadToEnd()
            TextBox1.Text = responseFromServer
            reader.Close()
    end sub
     
    Function GetTextFromXMLFile(ByVal XML_file As String) As String
     
            Dim reader As StreamReader = New StreamReader(XML_file)
            Dim ret As String = reader.ReadToEnd()
            reader.Close()
            Return ret
        End Function
     
        Function create_xml_request() As String
     
            XmlDoc.LoadXml("<FIXML></FIXML>")
     
            XmlDoc.DocumentElement.SetAttribute("v", "4.4")
            XmlDoc.DocumentElement.SetAttribute("s", "20040109")
            XmlDoc.DocumentElement.SetAttribute("r", "20030618")
     
            elemUserReq = XmlDoc.CreateElement("UserReq")
     
            elemUserReq.SetAttribute("ReqID", user_id + System.DateTime.Now.TimeOfDay.Milliseconds.ToString())
            elemUserReq.SetAttribute("UserReqTyp", "1")
            elemUserReq.SetAttribute("Username", user_id)
            elemUserReq.SetAttribute("Password", user_pass)
     
            XmlDoc.DocumentElement.AppendChild(elemUserReq)
     
            XmlDoc.Save(f_path + f_name)
     
            Return (f_path + f_name)
        End Function

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB.net 2005] Nom de fichier Windows depuis un nom dos
    Par ricil78 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 09/08/2007, 09h32
  2. [VS.NET 2005] Deploiement fichiers langues
    Par Bz dans le forum Général Dotnet
    Réponses: 3
    Dernier message: 17/03/2007, 12h24
  3. [vb.net 2005] Problème de lecture d'un fichier (en ressources)
    Par micfont999 dans le forum Windows Forms
    Réponses: 7
    Dernier message: 10/01/2007, 21h29
  4. [VB.net 2005] Fermer fichier mdb créer
    Par PoZZyX dans le forum Windows Forms
    Réponses: 3
    Dernier message: 19/09/2006, 08h20
  5. [VB NET 2005] Suppression Fichier
    Par metallicox dans le forum Windows Forms
    Réponses: 6
    Dernier message: 23/11/2005, 15h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo