| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Oct 2010
Beiträge: 15
| Fehlerhafter SOAP-Request
Hallo Forum, ich beschäftige mich aktuell mit einem Projekt, daß eine Anfrage an einen Webservice schickt und die Antwort dann verarbeiten soll. Die Operation des Webservices heißt "call". Kurz ein Überblick über den relevanten Code: Wenn die Anwendung fertig gelandet ist, wird folgende Methode aufgerufen: Code: protected function application_creationComplete(event:FlexEvent):void {
webService = new WebService();
webService.addEventListener(LoadEvent.LOAD,onWebSe rvice_load);
webService.loadWSDL("xxx?wsdl");
} Code: protected function onWebService_load(event:LoadEvent):void {
webService.call.addEventListener(ResultEvent.RESUL T, call_result);
webService.call(serviceName, parameter);
} Code: protected function call_result(event:ResultEvent): void {
trace("DESC: " + event.result);
} So weit, so gut. Rufe ich die Anwendung auf, sehe ich immer folgendes Ergebnis: "DESC: null". Beim Debuggen sieht man, daß im Result auch wirklich nichts vorhanden ist, obwohl dort eigenlich ja das Ergebnis des Webservices sein soll. Lasse ich Wireshark laufen, sehe ich, daß ich vom Server eine Antwort auf den Werbservice erhalte und daß die Antwort genauso aussieht, wie sie aussehen soll. Scheinbar scheint das Problem die Verarbeitung des Result-Events zu sein. Ich weiß nur leider nicht mehr weiter. Teste ich den Code mit einem Whois-Webservice, dann erhalte ich als Ergebnis "DESC: Ergebnis Whois". Mein Code müßte also richtig sein. Ich hoffe, das ist einigermaßen verständlich erklärt und einer von Euch kann mir helfen. Grüße, Teutates |
| | |
| | #2 (permalink) |
| Perverted Hermit Registriert seit: Mar 2004 Ort: Delmenhorst
Beiträge: 12.146
|
Versuch's mal so: Code: protected function application_creationComplete(event:FlexEvent):void
{
webService = new WebService();
webService.addEventListener(LoadEvent.LOAD, webService_loadHandler);
webService.loadWSDL("xxx?wsdl");
}
private function webService_loadHandler(event:LoadEvent):void
{
const webService:WebService = WebService(event.target);
const operation:Operation = webService.getOperation("call");
operation.addEventListener(ResultEvent.RESULT, operation_resultHandler)
operation.send(serviceName, parameter);
}
private function operation_resultHandler(event:ResultEvent):void
{
trace(event.result);
} Ist es ein öffentlich Webservice?
__________________ http://icodeapps.net | Meet me at the Flex user group Hamburg talking about CoffeeScript |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Oct 2010
Beiträge: 15
|
Danke für Deinen Code, aber auch damit bekomme ich ein NULL beim Result. Den Webservice findest Du hier: http://semnetz.deutsches-diabetes-mu...s/IDLOGIK?wsdl Was mich halt an der ganzen Sache wundert: Wenn ich einen Sniffer den Netzwerkverkehr abhören lasse, bekomme ich vom Server eine Antwort auf meinen Request. Was nebenbei: Gibt es eine Möglichkeit, daß ich mir den SOAP-Request und -Response irgendwie mittels trace() anzeigen lassen kann? Aktuell debugge ich und habe einen Haltepunkte vor dem InvokeEvent, so daß ich mir den Message-Body anschauen kann. Edit: So, ich habe beim Code von Omega Psi statt event.result ein event.message eingetragen und schon bekomme ich eine bessere Ausgabe: Code: (mx.messaging.messages::AcknowledgeMessage)#0
body = "***"
clientId = "DirectHTTPChannel0"
correlationId = "CBA623B8-54AC-A2C2-FA38-8BDD1C61B513"
destination = ""
headers = (Object)#1
DSStatusCode = 200
messageId = "796C2B18-FDC4-E1EA-0125-8BDD2ACE42D8"
timestamp = 0
timeToLive = 0 Code: <?xml version='1.0' encoding='utf-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<ns:callResponse xmlns:ns="http://www.id-berlin.de/types">
<ns:return>
<RESULT>
<RETURN_CODE Value="0" />
<STATUS Value="0" />
<RESULT_ITEMS>
<RESULTITEM Name="" Value="" />
<RESULTITEM Name="" Value="">
<ATTRIBUTE Name=" />
</RESULTITEM>
</RESULT_ITEMS>
</RESULT>
</ns:return>
</ns:callResponse>
</soapenv:Body>
</soapenv:Envelope> Geändert von teutates (08-10-2010 um 13:51 Uhr) |
| | |
| | #4 (permalink) |
| Neuer User Registriert seit: Oct 2010
Beiträge: 15
|
Ich muß den Thread mal wieder hochholen, weil ich gerade einfach nicht weiterkomme damit. Bei eigentlich jedem Beispiel, was ich bisher im Netz und in Büchern gefunden habe, wird immer ein event.result genommen, um auf das Ergebnis des WebService zuzugreifen und damit funktioniert es auch immer. Woran liegt es, daß mein zu nutzender Webservice das Ergebnis nicht event.result speichert, sondern in event.message? |
| | |
| | #5 (permalink) |
| Perverted Hermit Registriert seit: Mar 2004 Ort: Delmenhorst
Beiträge: 12.146
|
Ich könnte mir vorstellen, dass es mit der Service Definition selbst zusammenhängt. Bin aber gerade nicht im Thema drin, sorry.
__________________ http://icodeapps.net | Meet me at the Flex user group Hamburg talking about CoffeeScript |
| | |
| | #7 (permalink) |
| Perverted Hermit Registriert seit: Mar 2004 Ort: Delmenhorst
Beiträge: 12.146
|
Hm, ich hätte nicht gedacht, dass es ein Effekt darauf hat, ob überhaupt was ankommt.
__________________ http://icodeapps.net | Meet me at the Flex user group Hamburg talking about CoffeeScript |
| | |
| | #9 (permalink) |
| Perverted Hermit Registriert seit: Mar 2004 Ort: Delmenhorst
Beiträge: 12.146
|
Danke auf jeden Fall, dass du die Antwort gepostet hast!
__________________ http://icodeapps.net | Meet me at the Flex user group Hamburg talking about CoffeeScript |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| SOAP Web service classes Results auswerten - SOAP Deserialisierung | tilman78 | Flash mit XML und Webservices | 13 | 10-10-2007 08:04 |
| Fehlerhafter (automatischer) Umbruch | zellteilung | Flash MX | 0 | 29-07-2004 16:23 |
| Fehlerhafter Script bei duplicateMovieClip... | Scanis | ActionScript 1 | 7 | 21-04-2003 18:32 |
| wiedermal fehlerhafter scroller...:-(( | RedSaint | Flash 4 und Flash 5 | 1 | 13-02-2002 10:27 |
| Fehlerhafter Passwordschutz | sergio | Flash 4 und Flash 5 | 3 | 26-11-2001 06:27 |