Na de post Matsiya over het gebruik van SchemaTypeRegistry om de conversie van voorwerpen uit een SOAP Web Service in AS3 klassen, begon ik een paar experimenten. Het gebruik is heel eenvoudig en biedt de mogelijkheid voor het in kaart brengen SOAP Objects complexType soort branches AS3 voorwerpen van zijn keuze, maar met vermelding van zijn naam en naamruimte van het object zoals beschreven in het WSDL-bestand van web service.
Bijvoorbeeld, stel dat we het web service retourneert een lijst met gebruikers en we willen ophalen van de lijst in een categorie genaamd "UserArray", dat is eigenlijk een array van objecten van het type "User". Het volstaat te zeggen dat de vereniging voor het aanroepen van de web service door
SchemaTypeRegistry.getInstance (). RegisterClass (nieuw QName ( "http://www.flex-info.fr/", "userArray"), UserArray);
SchemaTypeRegistry.getInstance (). RegisterClass (nieuw QName ( "http://www.flex-info.fr/", "gebruiker"), User);
Het resultaat teruggegeven door de ResultEvent bevat dan een klasse die klassen UserArray gebruiker.
De afbeelding hieronder illustreert het proces:

Zoals Matsiya, jammer dat er niet meer communicatie over dit aspect van het in kaart brengen van gegevens tussen webservice SOAP en Flex (Flex 3). Ik hoop dat dit bericht is betrokken ...
Update: Om meer compleet, de klassen in AS3 voorwerpen moet worden geschreven met een minimum van hun eigenschappen zo eenvoudig en kunnen ook functies aan objecten. Voorbeeld van de Gebruiker klasse:
pakket (
openbare klasse Gebruiker
(
openbare var ID's: Aantal;
openbare var login: String;
openbare var mail: String;
openbare var naam: String;
openbare var wachtwoord: String;
)
)
UserArray klasse in het voorbeeld is in feite een uitbreiding van de ArrayCollection klasse, maar is niet noodzakelijk als een eenvoudige ArrayCollection is voldoende.
Wanneer een systeem van mapping en synchronisatie klassen Java, PHP of andere klassen te AS3? Il ne manque plus que ça ... niet?
Bovendien: het lijkt erop dat de koppeling niet goed werkt met Web services van het type "document / letterlijk" gegenereerd door Axis 1. De passage in 'RPC / gecodeerd "lost het probleem ...