Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[Flash / wsdl] Flash webservice / wsdl probleem

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik probeer een wsdl te gebruiken in Flash. Ik ben een noob op het gebiedt van actionscript en webservices. Het lukt mij om contact te maken met de wsdl. Het weergeven van het resultaat geeft meer problemen. Het lukt mij niet om iets van de gegevens weer te geven. Op het internet heb ik redelijk wat tutorials bekeken en geprobeerd. Allemaal met hetzelfde resultaat, er wordt geen resultaat weergegeven.

De versie van Flash die ik gebruik is Flash CS3 pro. Op dit moment probeer ik gebruik te maken van de WebServiceComponent en WebService class. De publishing settings staan op Actionscript 2.0.

In mijn movie heb ik 4 (of 5) components:
titelWS (Webservice component)
contactNr (TextInput)
send (button)
titelLijst (List)
titelDS (DataSet)

In een aantal gevallen heb ik geprobeerd de webservice aan een dataset te koppelen en deze vervolgens aan de List of ander component. Ook dit leverde geen resultaat op.

De wsdl en methode die ik gebruik hebben het volgende schema:

--> Params: Object
--> getTitelsByContract: getTitelsByContract
--> arg0: Integer
--> results: Array
--> [n]: Object
--> content: String
--> date: Date
--> source: String
--> titel: String


Ik heb de volgende bindings aangemaakt voor de webservice component:
Params. GetTitelsByContract (direction “in”, bound to “contractNr”)
Results (direction “out”, bound to “titelLijst:dataProvider”) (ook geprobeerd te koppelen aan de dataset)

De knop heeft een action script waarmee de webservice wordt getriggerd.

on (click) {
this._parent. titelWS.trigger();
}


Als er een waarde wordt ingevoerd in de textinput component en deze verstuur wordt naar de webservice kan ik, bij het testen van de movie, m.b.v. Debug>List Variables zien dat de webservice de gewenste lijst van gegevesn bevat:

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header />
<env:Body>
<ns2:getNewsTitlesByContractResponse xmlns:ns2="http://url">
<return>
<content>
content 0
</content>
<date>
2008-02-29T15:24:52.343+01:00
</date>
<source>
source 0
</source>
<titel>
titel 0
</titel>
</return>
<return>
<content>
content 1
</content>
<date>
2008-02-29T15:24:52.343+01:00
</date>
<source>
source 1
</source>
<titel>
titel 1
</titel>
</return>
<return>
<content>
content 2
</content>
<date>
2008-02-29T15:24:52.343+01:00
</date>
<source>
source 2
</source>
<titel>
titel 2
</titel>
</return>
<ns2:getNewsTitlesByContractResponse>
</env:Body>
</env:Envelope>


De List component blijft echter leeg. Ik heb ook geprobeerd op andere manieren de array van gegevens toegankelijk te maken en weer te geven. Helaas zonder succes. Op de momenten dat er wel iets wordt weer gegeven staat er “undefined”.

Ook heb ik het met Actionscript proberen op te lossen aan de hand van een aantal dingen die ik op het internet heb gevonden.

import mx.services.WebService;
import mx.services.PendingCall;

var sWSDLURL:String = "http:// wsdl url";
var titelWS:WebService = new WebService(sWSDLURL);

var contractNr = 1;

var pcResponse:PendingCall;

function getResponses():Void {
pcResponse = titelWS.getNewsTitlesByContract(contractNr);
pcResponse.onResult = onResponse;

trace("getResponses is called");
}

function onResponse(oResponse:Array):Void {
titelLijst.dataProvider = oResponse;
trace("onResponse is called");

for (var i:Number = 0; i < oResponse.length; i++){
trace(oResponse.length);
trace(i);
}
}

getResponses();


Ook hier kan ik m.b.v. List Variables zien dat de lijst met gewenste gevens aanwezig is. De methode onResponse wordt aangeroepen maar de array in onResponse wordt niet doorlopen en in de trace weergegeven.

Ik heb het gevoel dat het vrij makkelijk moet zijn om de gegevens uit de webservice te gebruiken in een trace, list of andere vorm. Kan iemand mij vertellen wat ik fout doe en vertellen hoe ik de gevens uit de webservice kan afdrukken of in dataset kan opslaan? Ook verwijzingen naar moeglijke oplossingen in Actionsript 3.0 zijn welkom. Alle hulp wordt zeer gewaardeerd!

[ Voor 3% gewijzigd door Verwijderd op 29-02-2008 18:11 ]