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

Services Web Discussion :

Upload d'un fichier


Sujet :

Services Web

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de TheBlue
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    167
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 167
    Par défaut Upload d'un fichier
    Bonjour.
    J'ai pour objectif de faire créer un petit Web Service, appelé par mon site ASP.Net via le clic d'un bouton, fait uploader ou héberger un fichier (qui est 1 CV au format .DOC)
    Voilà le code au sein du site ASP

    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim sw As New localhost.Service1
            sw.UploadFile()
        End Sub

    Et voilà le code du Webd Servive que j'ai réalisé :

    Code vb : 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
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
     
    Imports System.IO
    Imports System.Web.Services
     
    <System.Web.Services.WebService(Namespace := "http://tempuri.org/WebServiceISGI/Service1")> _
    Public Class Service1
        Inherits System.Web.Services.WebService
     
    #Region " Code généré par le Concepteur des services Web "
     
        Public Sub New()
            MyBase.New()
     
            'Cet appel est requis par le Concepteur des services Web.
            InitializeComponent()
     
            'Ajoutez votre code d'initialisation après l'appel InitializeComponent()
     
        End Sub
     
        'Requis par le Concepteur des services Web
        Private components As System.ComponentModel.IContainer
     
        'REMARQUE : la procédure suivante est requise par le Concepteur des services Web
        'Elle peut être modifiée en utilisant le Concepteur des services Web.  
        'Ne la modifiez pas en utilisant l'éditeur de code.
        Friend WithEvents Label1 As System.Windows.Forms.Label
        Friend WithEvents TextBox1 As System.Windows.Forms.TextBox
        Friend WithEvents Button1 As System.Windows.Forms.Button
        Friend WithEvents OpenFileDialog1 As System.Windows.Forms.OpenFileDialog
        <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
            Me.Label1 = New System.Windows.Forms.Label
            Me.TextBox1 = New System.Windows.Forms.TextBox
            Me.Button1 = New System.Windows.Forms.Button
            Me.OpenFileDialog1 = New System.Windows.Forms.OpenFileDialog
            '
            'Label1
            '
            Me.Label1.Location = New System.Drawing.Point(17, 17)
            Me.Label1.Name = "Label1"
            Me.Label1.TabIndex = 0
            Me.Label1.Text = "Chercher votre VB : "
            '
            'TextBox1
            '
            Me.TextBox1.Location = New System.Drawing.Point(101, 17)
            Me.TextBox1.Name = "TextBox1"
            Me.TextBox1.TabIndex = 0
            Me.TextBox1.Text = ""
            '
            'Button1
            '
            Me.Button1.Location = New System.Drawing.Point(199, 17)
            Me.Button1.Name = "Button1"
            Me.Button1.TabIndex = 0
            Me.Button1.Text = "OK"
            '
            'OpenFileDialog1
            '
     
        End Sub
     
        Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
            'CODEGEN : cette procédure est requise par le Concepteur des services Web
            'Ne la modifiez pas en utilisant l'éditeur de code.
            If disposing Then
                If Not (components Is Nothing) Then
                    components.Dispose()
                End If
            End If
            MyBase.Dispose(disposing)
        End Sub
     
    #End Region
     
     
        Dim f As FileInfo
     
        <WebMethod()> Public Function UploadFile() As String
            OpenFileDialog1.ShowDialog()
        End Function
     
        Private Sub OpenFileDialog1_FileOk(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles OpenFileDialog1.FileOk
            TextBox1.Text = OpenFileDialog1.FileName
        End Sub
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Try
                f = New FileInfo(TextBox1.Text)
                f.CopyTo("C:\Inetpub\wwwroot\ISGI\DossierCV")
            Catch ex As Exception
     
            End Try
        End Sub
    End Class

    Lors après de l'appel du service dans le site et le clic sur le bouton, je me trouve face à l'erreure suivante :

    Erreur du serveur dans l'application '/ISGI'.
    --------------------------------------------------------------------------------

    System.Web.Services.Protocols.SoapException: Le serveur n'a pas pu traiter la demande. ---> System.InvalidOperationException: Vous ne pouvez pas afficher une boîte de dialogue modale ou un formulaire lorsque l'application ne s'exécute pas en mode UserInteractive. Spécifiez le style ServiceNotification ou DefaultDesktopOnly pour afficher une notification à partir d'une application de service. at System.Windows.Forms.CommonDialog.ShowDialog() at WebServiceISGI.Service1.UploadFile() in c:\inetpub\wwwroot\WebServiceISGI\Service1.asmx.vb:line 88 --- Fin de la trace de la pile d'exception interne ---
    Avez vous une idée pour résoudre le problème, ou une autre méthode pour héberger un fichier à l'aide su Web Service ?

    Merci

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10
    Par défaut Dialogbox.MessageBoxOption
    Selon ce qui est indiqué dans le message d'erreur, il s'agit d'un problème avec une boîte de dialogue.
    A première vue, au niveau du code du Web service, tu demandes l'affichage d'une boîte de dialogue. Et, il est légitime que le système se demande où il doit afficher celle-ci? Sur le serveur du WS, sur la machine cliente?

    Bon. Je ne donne pas ici une solution mais juste une piste pour debugger la situation.
    • Il faudrait peut-être en effet revoir l'architecture du code entre ce qui se passe coté client et coté serveur.
    • Ou peut-être exploiter les propriétés 'ServiceNotification, DefaultDesktopOnly' de la boîte de dialogue. (Je ne peux pas t'aider à ce niveau).


    Bon code.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mars 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 6
    Par défaut
    Bonjour,
    As-tu réussi à résoudre ton problème?
    Si oui comment?

    Merci

Discussions similaires

  1. [Upload] Droits des fichiers
    Par flexx dans le forum Langage
    Réponses: 7
    Dernier message: 01/12/2005, 19h14
  2. [Upload] telecherger un fichier
    Par fraizas dans le forum Langage
    Réponses: 2
    Dernier message: 17/11/2005, 16h35
  3. Réponses: 6
    Dernier message: 06/10/2005, 20h54
  4. [Servlet][Tomcat] Upload d'un fichier sur le serveur
    Par gandalf_le_blanc dans le forum Tomcat et TomEE
    Réponses: 7
    Dernier message: 19/04/2004, 13h56

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