Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour,
J ai un probleme en ce qui concerne mon passage de parametre.
Voici mon code pour mieux comprendre...
Je suis en 10.5 avec .net Engine actif avec PBWSClient105
long ret,i kmehrresponse Struture_de_retour kmehrrequesttranslist Struture_d_envoi string retour countrytest envoi cdtest CT SoapConnection conn main proxy //ServiceProxy is a proxy generated by Web service //wizard TRY conn = CREATE SoapConnection ret = conn.CreateInstance(proxy, "main") IF (ret <> 0)then MessageBox("Fail", "Cannot create proxy "+ "main") ELSE CT.value = "testget" envoi.ws_cdtest = CT retour = proxy.gettest(envoi,30) MessageBox("WebService OK ", "Return -> " + retour) END IF
Donc bete appel a un webservice avec en parametre une structure complexe si je puis dire
Voici mon webservice en VB.net avec les structures..
<WebMethod(Description:="Réception d'une liste de transactions.")>
Public Function GetTest(ByVal r As TestGetClass.countryTest, ByVal TimeoutEnSecondes As Integer) As String Dim res As String = String.Empty Try res = r.cdTest.Value Catch ex As Exception End Try Return res End Function with Namespace TestGetClass Public Class countryTest '<remarks/> Public cdTest As cdTest End Class Public Class cdTest Public S As String Public SV As String Public SL As String Public DN As String Public L As String Public Value As String End Class End Namespace
Le probleme est donc, lorsque j arrive dans mon webservice en mode debug, l'objet "R" est egal a nothing.
Par contre si je ne pense qu une strucutre simple ou des données de type string...ca marche nickel.
J ai l impression que le fait d avoir des niveaux dans ma structure posent d enorme probleme..
Kelk un a une idée??
Bien a vous
Hors ligne
Les structures de WS à plusieurs niveaux ne fonctionnent pas sous PB 10.
J'ai du faire recréer des Webservices spécifiques pour les application PB, avec des types simples (1 seul niveau) de type String, Integer, etc..
Hors ligne