Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Pages: 1
Bonjour,
J'ai un objet ancêtre qui traite de manière générique l'appel à un web service. Dans le descendant je crée le proxy et j'appelle la methode du web service. J'ai besoin d'utiliser la clause DYNAMIC mais PB me renvoie à l'exécution une erreur 65 Dynamic function not found. Possible causes include: pass by value/reference mismatch.
On dirait qu'il ne gère pas correctement la clause DYNAMIC dans le cas des web services. Quelqu'un à une idée ?
Pour déclarer le proxy de manière générique je procède ainsi (je simplifie) :
Dans l'ancêtre
Declare Instance Variables
PowerObject i_ProxyObject
String is_ProxyName, is_URL
ue_Call()
SoapConnection l_Conn
l_Conn = CREATE SoapConnection
...
l_Conn.CreateInstance(i_ProxyObject, is_ProxyName, is_URL)
Dans le descendant
ue_Init()
is_URL = "http://..."
is_ProxyName = "myWebService"
i_ProxyObject = CREATE USING is_ProxyName
ue_Call()
i_ProxyObject.DYNAMIC myMethod(myArgs, ...)
Hors ligne
Bonjour,
Merci d'utiliser les balises de code afin de rendre les messages plus lisibles.
Par ailleurs, as-tu vérifié le passage de paramètres de ta méthode?
Peux-tu nous communiquer son prototype (avec détail des arguments en ref, value, etc...)
et l'appel dynamique complet?
Cordialement
Hors ligne
Il n'est jamais trop tard!
Ok pour les balises que je ne connaissais pas.
Concernant mon code il est vraiment comme mon exemple. Mon web service a 4 arguments en string, et tous passés par référence. Il n'y a rien de compliqué. Je précise que ça fonctionne parfaitement du moment que je n'utilise pas la clause DYNAMIC.
Sans le DYNAMIC je suis obligé d'appeler ma méthode dans le descendant. Alors qu'en dynamique je pourrais le coder de manière générique dans l'ancêtre. Le but était juste d'être plus propre "conceptuellement parlant".
Merci tout de même.
Hors ligne
Bonsoir,
Tu as bien pensé à tester l'existence de ton objet proxy avec un Isvalid()?
Ta méthode n'est pas polymorphique par hasard?
Si tu nous faisais un export de tes objets, il serait peut-être plus facile de voir ce qui cloche.
Au fait, dans quelle version de PB es-tu?
Hors ligne
Pages: 1