Un saluto a tutti.
Sono alle prese con un ostacolo che non riesco a scavalcare.
Sto producendo un programma client per l'invio di dati in un web service.
Il programma è in vb2010. Prima di ammazzarmi per creare tutto il software ho provato a fare delle prove di invio.
Dal file wdsl ho creato il web references in modo da creare i metodi. Fin qui tutto bene.
Questo è il codice (Ho variato i dati anche perché user e password sono reali e non posso divulgarli)
Dim Bo As New test.web_service
Dim EsitoBo As String
Dim i As Long
Dim myservice As New WebProxy("http://test.software.it/it/soap_ws/index/wsdl")
Dim mycredentialCache As CredentialCache = New CredentialCache()
Dim credentials As NetworkCredential = New NetworkCredential("User", "Pass")
mycredentialCache.Add(New Uri("http://test.software.it/it/soap_ws/index/wsdl"), "Basic", credentials)
myservice.Credentials = mycredentialCache
Try
EsitoBo = Bo.setBo("00000", "00000", "11111", "11111", "04", "04", "ROMBO", 500, "", "PROVA 001", "2016", 1, 1)
Catch ex As Exception
MsgBox("Attezione. Errore: " & ex.Message)
End Try
MsgBox(EsitoBo)
Risultato: "Invalid Authentication"
Sono sicuro che interroga il web service e che le credenziali inserite siano giuste.
Nota: Il protocollo è il Soap.
Infatti ho provato i metodi con SoapUI, autenticati con user e password come basic pre-emptively e funzionano.
Invece in vb 2010 ho provato vari codici, ma nulla.
Io ho creato i metodi con web reference. Navigando i rete ho letto alcune info che per il protocollo soup è meglio usare service reference.
Che ne pensate? E' forse questo che causa la mancata autenticazione?
Davvero, è la mia prima esperienza con i web service, se qualcuno può darmi una mano ne sarei grato.
Tutte le informazioni sono utili.
Grazie e buona giornata.