Zurück   Flashforum > Flex und AIR > Flex programmieren

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 12-01-2009, 12:36   #1 (permalink)
n82
Neuer User
 
Registriert seit: Jan 2009
Beiträge: 28
Webservice

Hallo miteinander

habe den auftrag von meinem lehrmeister flex anzuschaun. will jetzt für mich etwas kleines programmieren. mit einem login, etwas aus der db lesen und etwas schreiben.

mit http-service habe ich schon ein bisschen rumgespielt..
will aber eigentlich mit einem webservice arbeiten. das problem ist nur, es klappt nicht! schon 3 verschiedene services getestet. (alle auf einem anderen server) wenn ich ein eigenen simples webservice lokal lade, funktioniert alles wunderbar. habe etwas über proxy gelesen und ausversucht, hat aber nicht geklappt!
was mich wunder nimmt, ist was ist der unterschied, wenn mein den webservice mit dem FB3 importiert?

vielen dank!
n82 ist offline   Mit Zitat antworten
Alt 12-01-2009, 12:53   #2 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.142
Hast du Code und die getesten *.wsdl-Urls? Und was waren die Fehlermeldungen?
Omega Psi ist offline   Mit Zitat antworten
Alt 12-01-2009, 14:29   #3 (permalink)
n82
Neuer User
 
Registriert seit: Jan 2009
Beiträge: 28
Zitat:
Zitat von Omega Psi Beitrag anzeigen
Hast du Code und die getesten *.wsdl-Urls? Und was waren die Fehlermeldungen?
Hallo Omega Psi

Also die Urls stimmen sicher, die werden in der Firma auch bei anderen Applikationen verwendet.
Leider kann man diese nur intern aufrufen.

ich habe den webservice mit dem FB3 importiert.
dann
Code:
 <srv:Authenticator id="myService">
     <srv:authenticate_request_var>
  		<srv:Authent_request password="{passwort.text}" username="{username.text}"/>
     </srv:authenticate_request_var>
   </srv:Authenticator>
so ruf ich ihn auf:
Code:
click="myService.authent(passwort.text, username.text);
und so will ich etwas ausgeben:
Code:
<mx:Label id="l1" text="{myService.authent_lastResult
ausgabebject Data_t

logischer weise müsste es ja so sein:
Code:
text="{myService.authenticate_lastResult.user.name}
da kommt aber eine warning:
Data binding will not be able to detect assignments to "user"
n82 ist offline   Mit Zitat antworten
Alt 12-01-2009, 14:34   #4 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.142
User wurde nicht als Bindable deklariert. Fange das Ergebnis mal testweise in einem EventListener explizit ab und lasse es dir mal in einem trace ausgeben.
Omega Psi ist offline   Mit Zitat antworten
Alt 12-01-2009, 14:35   #5 (permalink)
n82
Neuer User
 
Registriert seit: Jan 2009
Beiträge: 28
Zitat:
Zitat von Omega Psi Beitrag anzeigen
User wurde nicht als Bindable deklariert. Fange das Ergebnis mal testweise in einem EventListener explizit ab und lasse es dir mal in einem trace ausgeben.
ööö was muss ich tun?
n82 ist offline   Mit Zitat antworten
Alt 12-01-2009, 14:49   #6 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.142
Als Sketch:
Code:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application layout="absolute"
                xmlns:mx="http://www.adobe.com/2006/mxml">
	<mx:Script>
		<![CDATA[
			import mx.rpc.events.FaultEvent;
			import mx.rpc.events.ResultEvent;

			private function eventListener(event:Event):void
			{
				switch(event.type)
				{
					case FaultEvent.FAULT:
						break;
					case ResultEvent.RESULT:
						break;
				}
			}
		]]>
	</mx:Script>
	<mx:WebService fault="eventListener(event)"
                   id="service"
                   result="eventListener(event)" />
</mx:Application>
Omega Psi ist offline   Mit Zitat antworten
Alt 12-01-2009, 15:20   #7 (permalink)
n82
Neuer User
 
Registriert seit: Jan 2009
Beiträge: 28
Zitat:
Zitat von Omega Psi Beitrag anzeigen
Als Sketch:
hmm könntest du mir echt das genauer geben?
mein code:
Code:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" 
   layout="vertical">
   <mx:Script>
      <![CDATA[

         import mx.rpc.events.FaultEvent;
         import mx.controls.Alert;
         function onFault(e:FaultEvent) : void {
            Alert.show(e.fault.faultDetail,"Fehler");
         }
      ]]>
   </mx:Script>
   <mx:WebService id="scmo" 
      wsdl="htpp://" useProxy="false">
      <mx:operation name="getName" fault="onFault(event)" />
      
      
   </mx:WebService>
   <mx:Panel>
      <mx:Form>
         <mx:FormItem label="Name:">
            <mx:Label 
               text="{scmo.getName.lastResult}"/>
         </mx:FormItem>
      </mx:Form>
      <mx:ControlBar>
         <mx:HBox>
            <mx:NumericStepper id="fid" minimum="1" 
               maximum="502"/> 
             <mx:Button label="getName" 
                click="scmo.getName(fid.value)" />
          </mx:HBox>   
      </mx:ControlBar>
   </mx:Panel>
   <mx:TraceTarget level="0" includeLevel="true" includeCategory="true"/>
</mx:Application>
vielen dank für deine zeit!
n82 ist offline   Mit Zitat antworten
Alt 12-01-2009, 15:25   #8 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.142
Code:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application initailize="eventListener(event)" xmlns:mx="http://www.adobe.com/2006/mxml" 
   layout="vertical">
   <mx:Script>
      <![CDATA[

         import mx.rpc.events.FaultEvent;
         import mx.controls.Alert;

         function eventListener(e:FaultEvent) : void {
            // call a webservice method.
            // scmo.getOperation("getName").send();
         }

         function onFault(e:FaultEvent) : void {
            Alert.show(e.fault.faultDetail,"Fehler");
         }

         function onResult(e:ResultEvent) : void {
            trace("onResult", event.target)
            Alert.show("Yehaa");
         }
      ]]>
   </mx:Script>
   <mx:WebService id="scmo" 
      wsdl="htpp://" result="onresult(event)" useProxy="false">
      <mx:operation name="getName" fault="onFault(event)" result="onresult(event)" />
      
      
   </mx:WebService>
   <mx:Panel>
      <mx:Form>
         <mx:FormItem label="Name:">
            <mx:Label 
               text="{scmo.getName.lastResult}"/>
         </mx:FormItem>
      </mx:Form>
      <mx:ControlBar>
         <mx:HBox>
            <mx:NumericStepper id="fid" minimum="1" 
               maximum="502"/> 
             <mx:Button label="getName" 
                click="scmo.getName(fid.value)" />
          </mx:HBox>   
      </mx:ControlBar>
   </mx:Panel>
   <mx:TraceTarget level="0" includeLevel="true" includeCategory="true"/>
</mx:Application>
Mal um das nötigste erweitert.
Omega Psi ist offline   Mit Zitat antworten
Alt 12-01-2009, 15:40   #9 (permalink)
n82
Neuer User
 
Registriert seit: Jan 2009
Beiträge: 28
debug:
Code:
[DEBUG] mx.rpc.soap.WebService WSDL loaded
[DEBUG] mx.rpc.soap.Operation Invoking SOAP operation getName
[DEBUG] mx.rpc.soap.SOAPEncoder Encoding SOAP request envelope
[DEBUG] mx.rpc.soap.SOAPEncoder Encoding SOAP request body
[INFO] mx.messaging.Producer '2FDE20A0-FC3D-011E-8B9B-CB7DCF396AED' producer sending message 
'6FA085D8-993C-277F-C0BF-CB7DFE801352'
[DEBUG] mx.messaging.Channel 'direct_http_channel' channel sending message:
(mx.messaging.messages::SOAPMessage)#0
  body = "<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <SOAP-ENV:Body>
    <id>1</id>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>"
  clientId = "DirectHTTPChannel0"
  contentType = "text/xml; charset=utf-8"
  destination = "DefaultHTTP"
  headers = (Object)#1
  httpHeaders = (Object)#2
    SOAPAction = ""getName""
  messageId = "6FA085D8-993C-277F-C0BF-CB7DFE801352"
  method = "POST"
  recordHeaders = false
  timestamp = 0
  timeToLive = 0
  url = "https:..."
[INFO] mx.messaging.Producer '2FDE20A0-FC3D-011E-8B9B-CB7DCF396AED' producer 
acknowledge of '6FA085D8-993C-277F-C0BF-CB7DFE801352'.
[ERROR] mx.messaging.Producer '2FDE20A0-FC3D-011E-8B9B-CB7DCF396AED' producer 
fault for '6FA085D8-993C-277F-C0BF-CB7DFE801352'.
[INFO] mx.rpc.soap.SOAPDecoder Decoding SOAP response
[DEBUG] mx.rpc.soap.SOAPDecoder Encoded SOAP response 
[DEBUG] mx.rpc.soap.SOAPDecoder Decoding SOAP response envelope
gibt hier auch ein fehler:
function onResult(e:ResultEvent) : void {
Type was not found or was not a compile-time constant: ResultEvent.

die variable fid wird schon verschickt, oder?
n82 ist offline   Mit Zitat antworten
Alt 12-01-2009, 15:44   #10 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.142
Resultevent muss importiert werden.

Dann noch mal testen.
Omega Psi ist offline   Mit Zitat antworten
Alt 13-01-2009, 13:45   #11 (permalink)
n82
Neuer User
 
Registriert seit: Jan 2009
Beiträge: 28
Zitat:
Zitat von Omega Psi Beitrag anzeigen
Resultevent muss importiert werden.

Dann noch mal testen.
nöö das geht immernoch nicht...
so oder:
import mx.rpc.events.ResultEvent;
n82 ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 04:30 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele