webservice operation dynamisch aufrufen [Flash 9]
| 03.03.2010, 16:34 | | Beiträge: 126 Wohnort: Berlin Registriert: Nov 2006
| webservice operation dynamisch aufrufen Hallo,
ich versuch nun schon eine ganze weile mein Problem zu lösen, bisher allerdings ohne Erfolg. Es geht mir darum eine Art DataGrid-Componente für Webservices (SOAP) zu erstellen, die vielseitig eingesetzt werden kann. Der Aufruf der WSDL und der Operationen funktioniert auch alles wie es soll, z.B. wie folgt:
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 | public function init():void
{
soap = new WebService();
soap.wsdl = "http://www.domain.de/path/to/wsdl";
soap.addEventListener( LoadEvent.LOAD, handleWsdl );
soap.addEventListener( FaultEvent.FAULT, handleFault );
soap.loadWSDL();
}
private function handleWsdl(event:LoadEvent):void
{
soap.getUsers.addEventListener( ResultEvent.RESULT, handleLabels );
soap.getUsers();
}
|
Nun möchte ich aber nicht immer die Operation getUsers aufrufen, sondern z.B. über Flashvars oder irgend einen anderen String übergeben welche Servicemethode aufgerufen wird. Soweit ich weiß bietet die Webservice-Class ja keine Möglichkeit die Methoden des Services zu extrahieren.
Mein Ansatz war daher folgender:
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 | private function handleWsdl(event:LoadEvent):void
{
// 1. versuch
soap['getUsers'].addEventListener( ResultEvent.RESULT, handleResult );
soap['getUsers']; // kein Ergebnis
soap['getUsers'](); // TypeError: Error #1006: value ist keine Funktion.
// 2. versuch
var op:Operation = new Operation(soap, 'getUsers');
op.addEventListener( ResultEvent.RESULT, handleResult );
op.send();
// [RPC Fault faultString="Couldn't find method 'getUsers' in service." faultCode="Client.NoSuchMethod" faultDetail="null"]
}
|
Hat jemand eine Idee was ich falsch mache? Oder gibt es vielleicht eine bessere Möglichkeit an das Problem heran zu gehen? | Geändert von sullivan am 03.03.10 um 16:34 Uhr
| |
|
| 03.03.2010, 17:18 | Re1 | Beiträge: 126 Wohnort: Berlin Registriert: Nov 2006
Themenautor/in
| Da sucht man stundenlang nach einer Lösung und sobald man es hier reinschreibt findet man doch etwas was einen auf die richtige Spur bringt. Es handelt sich bei meinem Objekt "soap['getUsers']" um ein Operation-Object, dass man mit send() aufrufen kann:
ActionScript:| 1 | soap['getUsers'].send();
|
und mit Parametern dann so:
ActionScript:| 1 | soap['getUsers'].send(1,0);
|
Vielleicht hilfts ja noch mal jemandem. | |
| | Themen Ähnliche Beiträge zum Thema | 09.10.2010 - teutates 02.06.2010 - Jasper18 04.02.2010 - Mole23 11.07.2010 - runner78 |
|
Flashhilfe.de Flash Platform Tipps & Tutorials Flash Platform Andere Programmiersprachen Jobangebote Diskussionen
Flashhilfe News 
31.01.12, 12:30#Jobs Wir suchen (freiberufliche) Flash Developer (m/w) in Köln/Aachen http://t.co/4WPsXPOA 20.01.12, 21:02#Jobs Flash-Projekt Produktkonfigurator http://t.co/qPlGSiPd 12.01.12, 18:50#Jobs Flash Freelancer für ca. 2 Wochen in München gesucht http://t.co/XpMJr5dv 10.01.12, 10:45#PureMVC vs #RobotLegs Performance Battle. PureMVC is significantly faster than RobotLegs in nearly every respect. http://t.co/324gWRAr 06.01.12, 21:37#Jobs Flash Developer in Hamburg gesucht http://t.co/hZgTZvHJ
Regeln & Bedingungen
|