Chapitre 1 : Présentation de l’accès aux
services de données
Accès aux données dans Flex comparé à d’autres
technologies
Flex n’utilise pas les sources de données et les données de la même manière que les applications dont l’interface
utilisateur fait appel à HTML.
Traitement côté client et traitement côté serveur
Contrairement aux ensembles de modèles HTML créés à l’aide de servlets, d’environnements JSP, ASP, PHP ou
CFML, Flex sépare le code client du code serveur. L’interface utilisateur de l’application est compilée dans un fichier
binaire SWF envoyé au client.
Lorsque l’application effectue une demande à un service de données, le fichier SWF n’est pas recompilé et aucune
réactualisation de page n’est requise. Le service distant ne renvoie que des données. Flex lie les données renvoyées à
des composants de l’interface utilisateur dans l’application client.
1
Lorsqu’un utilisateur clique sur le contrôle Button d’une application par exemple, le code côté client appelle un service
Web. Les données de résultat provenant du service Web sont renvoyées dans le fichier SWF binaire sans
réactualisation de page. Les données de résultat peuvent alors être utilisées comme contenu dynamique dans
l’application.
<?xm l version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
Comparons cet exemple Flex à l’exemple suivant, dans lequel du code JSP est utilisé pour appeler un service Web avec
une balise personnalisée JSP. Lorsqu’un utilisateur demande le code JSP, la demande du service Web est effectuée sur
le serveur et non pas sur le client. Le résultat est utilisé pour générer du contenu dans la page HTML. Le serveur
d’application régénère la page HTML entière avant de la renvoyer au navigateur Web de l’utilisateur.
<!-- Display the web service result. -->
<%= pageContext.getAttribute("myresult") %>
2
Accès à la source de données
Une autre différence entre Flex et les autres technologies d’application Web réside dans l’absence (dans Flex) de
communication directe avec une source de données. Vous utilisez un composant d’accès aux données pour vous
connecter à un service distant et interagir avec la source de données côté serveur.
L’exemple suivant présente une page ColdFusion accédant directement à une source de données :
...
<CFQUERY DATASOURCE="Dsn"
NAME="myQuery">
SELECT * FROM table
</CFQUERY>
...
Une fonctionnalité similaire est obtenue dans Flex en ayant recours à un service HTTPService, un service Web ou un
composant RemoteObject afin d’appeler un objet côté serveur qui renvoie les résultats d’une source de données.
Evénements, appels de service et liaison de données
Flex est une technologie orientée événement. Une action de l’utilisateur ou un événement de programme peut
déclencher l’accès à un service. Par exemple, l’utilisateur cliquant sur un bouton constitue un événement d’action qui
peut être utilisé pour déclencher un appel de service. Un événement de programme peut être une application
terminant la création d’un composant de l’interface utilisateur tel qu’un composant DataGrid. L’événement
creationComplete pour le composant DataGrid peut être utilisé pour appeler un service distant qui renseignera ce
composant.
Dans Flex, les appels de service sont asynchrones. L’application client n’a pas besoin d’attendre les données renvoyées.
Les appels de service asynchrones présentent des avantages lors de l’extraction ou de la mise à jour de jeux de données
volumineux. L’application client n’est pas bloquée par l’attente de l’extraction ou de la mise à jour des données.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Présentation de l’accès aux services de données
Les données renvoyées par un appel de service sont stockées dans une propriété CallResponder associée à l’appel de
service. Les composants de l’interface utilisateur font alors appel à la liaison de données pour extraire de la propriété
CallResponder les données renvoyées.
La liaison de données dans Flex vous permet de mettre à jour dynamiquement un composant de l’interface utilisateur
avec une source de données. Par exemple, un composant Flex peut associer son attribut text à l’attribut lastResult d’une
propriété CallResponder. En cas de modification des données de CallResponder, le composant Flex est
automatiquement mis à jour.
Flex implémente également la liaison de données bidirectionnelle qui garantit la mise à jour automatique d’un
composant Flex ou d’une source de données dont les données sont modifiées. Un autre avantage de la liaison de
données bidirectionnelle réside dans la mise à jour de données distantes à partir des saisies effectuées par un utilisateur
dans un composant Form ou dans un composant de données Flex.
Voir aussi
« Création d’applications centrées sur les données avec Flash Builder » à la page 8
Utilisation de Flash Builder pour accéder aux services de
3
données
Flex Builder 3 permet d’implémenter des appels de procédures distants à des services de données à l’aide des
composants d’accès aux données Flex. Cependant, Flash Builder simplifie ce processus.
Flash Builder fournit des assistants et des outils permettant d’effectuer les opérations suivantes :
• Accès aux services de données
• Configuration des données renvoyées par le service de données
• Assistance pour la pagination des données renvoyées par le service
• Assistance pour la fonctionnalité de gestion des données qui synchronise plusieurs mises à jour des données du
serveur
• Génération de code client pour l’accès aux services de données
• Liaison des données renvoyées par le service aux composants de l’interface utilisateur
Flux de travaux Flash Builder pour l’accès aux services
Appliquez le flux de travaux suivant lorsque vous utilisez Flash Builder pour créer une application qui accède à des
services de données.
1 Selon les circonstances, vous commencerez soit par vous connecter à un service de données, soit par construire
l’interface utilisateur.
Connexion au service distant : si vous commencez par vous connecter au service distant, vous devez ensuite
construire l’interface utilisateur.
Construction de l’interface utilisateur : si vous commencez par construire l’interface utilisateur, vous devez
ensuite vous connecter au service distant.
Remarque : la première action effectuée relève d’un choix personnel. Par exemple, si la conception d’une interface
utilisateur est déjà prévue, vous pouvez commencer par construire l’interface utilisateur. A l’inverse, vous pouvez
commencer par vous connecter aux données et laisser Flash Builder vous aider à générer les composants d’application.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Présentation de l’accès aux services de données
2 Liez les opérations de données à des composants d’applications.
3 (Facultatif) Gérez l’extraction et la mise à jour des données.
Les outils Flash Builder vous permettent d’implémenter la pagination des données renvoyées et de coordonner la
mise à jour des jeux de données.
Lors du retour de gros volumes d’enregistrements de données, vous implémentez généralement la pagination pour
extraire un jeu d’enregistrements selon vos besoins.
Pour les applications mettant à jour plusieurs enregistrements, vous pouvez implémenter des fonctions de gestion
de données. Les fonctions de gestion de données incluent :
• Fonction de validation pour la mise à jour simultanée des enregistrements modifiés
• Mécanisme d’annulation des modifications avant leur écriture sur le serveur
• Génération de code pour la mise à jour automatique des composants d’interface utilisateur au fur et à mesure
que des enregistrements sont ajoutés, supprimés ou modifiés
4 Exécutez l’application et surveillez le flux de données.
Une fois l’application terminée, exécutez-la pour en observer le fonctionnement. Utilisez le Moniteur de réseau
Flash Builder pour afficher les données transmises entre l’application et le service. Le Moniteur de réseau est utile
pour diagnostiquer les erreurs et analyser les performances.
4
Flash Builder fournit également des environnements robustes de débogage et de définition de profil. Le Moniteur
de réseau et le profileur Flash sont disponibles avec Flash Builder Premium.
Voir aussi
« Création d’applications centrées sur les données avec Flash Builder » à la page 8
Développement des services pris en charge par Flash Builder
Les assistants et les outils Flash Builder prennent en charge l’accès aux implémentations des types de services suivants :
• Services PHP
• Services ColdFusion
• BlazeDS
• LiveCycle Data Services
• Services HTTP (de style REST)
• Services Web (SOAP)
• Fichiers XML statiques
Si vous avez besoin d’une prise en charge d’outils pour d’autres types de services (Ruby on Rails, par exemple), vous
pouvez développer l’implémentation Flash Builder. Voir Référence d’extensibilité Flash Builder.
Composants d’accès aux données
Les composants d’accès aux données permettent à une application client d’appeler des opérations et des services à
travers un réseau. Les composants d’accès aux données utilisent des appels de procédure distante pour interagir avec
les environnements de serveur. Les trois composants d’accès aux données sont les composants RemoteObject,
HTTPService et WebService.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Présentation de l’accès aux services de données
Les composants d’accès aux données sont conçus pour les applications client dans lesquelles un modèle d’appel et de
réponse constitue un bon choix pour accéder aux données externes. Ces composants permettent au client d’effectuer
des demandes asynchrones à des services distants qui traitent les demandes, puis de renvoyer les données à
l’application.
Un composant d’accès aux données appelle un service distant. Il stocke ensuite les données de réponse du service dans
un objet ActionScript ou tout autre format renvoyé par le service. Utilisez les composants d’accès aux données dans
l’application client pour qu’elle fonctionne avec trois types de services :
• Services d’objets distants (RemoteObject)
• Services Web basés sur SOAP (WebServices)
• Services HTTP, incluant les services Web basés sur REST (HTTPService)
Adobe® Flash® Builder™ fournit des assistants et des outils permettant d’envelopper l’implémentation d’un composant
d’accès aux données dans une enveloppe de service. L’enveloppe de service encapsule la fonctionnalité du composant
d’accès aux données, rendant invisible une grande partie de l’implémentation de niveau inférieur et vous permettant
ainsi de vous concentrer sur l’implémentation de services et la génération d’applications client pour accéder à ces
services. Pour plus d’informations sur l’utilisation de Flash Builder pour accéder aux services de données, voir
« Création d’applications centrées sur les données avec Flash Builder » à la page 8.
5
Accès aux services
Par défaut, Adobe Flash Player bloque l’accès à tout hôte qui ne correspond pas exactement à celui utilisé pour charger
une application. Si vous n’utilisez pas LiveCycle Data Services ou BlazeDS pour traiter les demandes par proxy, un
service HTTP ou Web doit résider sur le serveur hébergeant l’application ou le serveur distant hébergeant le service
HTTP ou Web doit définir un fichier
crossdomain.xml. Le fichier crossdomain.xml permet à un serveur d’indiquer
que ses données et ses documents sont disponibles pour les fichiers SWF traités à partir de certains domaines ou de
tous les domaines. Le fichier
crossdomain.xml doit figurer à la racine Web du serveur que l’application contacte.
Composants HTTPService
Utilisez les composants HTTPService pour l’envoi de requêtes HTTP GET ou POST et afin d’inclure les données de
réponses HTTP dans une application client. Si vous utilisez Flex pour créer des applications d’ordinateur (exécutées
dans Adobe AIR®), les requêtes HTTP PUT et DELETE sont prises en charge.
Si vous utilisez LiveCycle Data Services ou BlazeDS, vous pouvez faire appel à un HTTPProxyService grâce auquel vous
pourrez utiliser des méthodes HTTP supplémentaires. Le service HTTPProxyService vous permet d’envoyer des
requêtes GET, POST, HEAD, OPTIONS, PUT, TRACE ou DELETE.
Un service HTTP peut consister en n’importe quel URI HTTP qui accepte des demandes HTTP et envoie des réponses.
Un autre nom courant pour ce type de service est service Web de style REST. REST signifie REpresentational State
Transfer, un style architectural pour les systèmes hypermédia distribués.
Les composants HTTPService s’avèrent utiles lorsque vous ne pouvez pas exposer la même fonctionnalité en tant que
service Web SOAP ou service d’objet distant. Vous pouvez par exemple utiliser des composants HTTPService pour
interagir avec des pages JavaServer (JSP), des servlets et des pages ASP qui ne sont pas disponibles comme services Web
ou destinations de service distant.
Lorsque vous appelez la méthode
send() de l’objet HTTPService, elle effectue une demande HTTP auprès de l’URI
spécifié et une réponse HTTP est renvoyée. Si vous le souhaitez, vous pouvez transmettre des arguments à l’URI
spécifié.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Présentation de l’accès aux services de données
Flash Builder fournit des flux de travaux qui vous permettent de vous connecter de manière interactive à des services
HTTP. Pour plus d’informations, voir « Accès aux services HTTP » à la page 13.
Voir aussi
« Accès aux services HTTP » à la page 13
Thèse : Representational State Transfer (REST) par Roy Thomas Fielding
Composants WebService
Les composants WebService vous permettent d’accéder aux services Web SOAP (modules logiciels comportant des
méthodes). Les méthodes de service Web sont aussi appelées opérations. Les interfaces de service Web sont définies à
l’aide du langage WSDL (Web Services Description Language). Les services Web fournissent aux modules logiciels
exécutés sur différentes plateformes une méthode conforme aux standards leur permettant d’interagir entre eux. Pour
plus d’informations sur les services Web, voir la section relative aux services Web du site World Wide Web
Consortium, www.w3.org/2002/ws/.
Les applications client peuvent interagir avec des services Web qui définissent leurs interfaces dans un document
WSDL, disponible en tant qu’URL. WSDL est un format standard permettant de décrire les messages qu’un service
Web comprend, le format des réponses de ce service à ces messages, les protocoles que le service Web prend en charge
et l’adresse à laquelle envoyer les messages.
6
Flex prend en charge WSDL 1.1, décrit à l’adresse www.w3.org/TR/wsdl, ainsi que les services Web codés RPC et
littéral document.
Il prend également en charge les demandes et les résultats de service Web formatés en tant que messages SOAP et
transportés via HTTP. SOAP fournit la définition du format XML que vous pouvez utiliser pour échanger des
informations structurées et typées entre un client de service Web (une application créée avec Flex, par exemple) et un
service Web.
Vous pouvez utiliser un composant WebService pour vous connecter à un service Web SOAP lorsque les services Web
constituent un standard établi dans l’environnement. Les composants WebService sont également utiles pour les objets
situés dans un environnement d’entreprise mais qui ne sont pas nécessairement disponibles sur le chemin source de
l’application Web.
Flash Builder fournit des flux de travaux qui vous permettent de vous connecter de manière interactive à des services
Web. Pour plus d’informations, voir « Accès aux services Web » à la page 16.
Composants RemoteObject
Les services d’objets distants vous permettent d’accéder à la logique commerciale directement dans son format natif
au lieu de la formater en tant que XML, comme vous le faites avec les services Web ou de style REST. Vous économisez
ainsi le temps nécessaire pour exposer la logique existante au format XML. Un autre avantage des services d’objets
distants réside dans la vitesse de communication à travers le réseau. Les échanges de données s’effectuent encore via
HTTP ou https, mais les données elles-mêmes sont sérialisées dans une représentation binaire. L’utilisation de
composants RemoteObject réduit le volume de données qui transitent sur le réseau, diminue la mémoire utilisée côté
client et accélère le traitement.
ColdFusion, PHP, BlazeDS et LiveCycle Data Services peuvent utiliser une définition de type côté serveur lors de
l’accès à des données du serveur. L’application client accède à un objet Java, à un composant ColdFusion (qui constitue
un objet Java en interne) ou à une classe PHP directement par l’invocation distante d’une méthode sur un objet
désigné. L’objet sur le serveur utilise ses propres types de données natifs en tant qu’arguments, interroge une base de
données avec ces arguments, puis renvoie les valeurs dans leurs types de données natifs.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Présentation de l’accès aux services de données
Lorsque la définition de type côté serveur n’est pas disponible, Flash Builder dispose d’outils pour implémenter la
définition de type côté client. Utilisez Flash Builder afin de configurer et de définir des types pour les données
renvoyées du service. La définition de type côté client permet à l’application client d’interroger une base de données et
d’extraire des données correctement typées. La définition de type côté client est requise pour un service qui ne définit
pas le type de données renvoyées par le service.
Flash Builder fournit des flux de travaux qui vous permettent de vous connecter de manière interactive à des services
d’objets distants. Pour plus d’informations, voir « Connexion à des services de données » à la page 9.
7
Dernière mise à jour le 16/11/2012
Chapitre 2 : Création d’applications
centrées sur les données avec Flash Builder
Les outils Flash Builder peuvent vous aider à créer des applications accédant à des services de données. Commencez
par créer un projet Flex pour vos applications. Vous pouvez ensuite établir une connexion à un service de données,
configurer l’accès aux données du service, puis créer une interface utilisateur pour une application. Dans certains cas,
vous devez commencer par créer l’interface utilisateur, puis accéder au service de données.
Création d’un projet Flex pour l’accès aux services de
données
Flex accède aux services de données en tant qu’objet distant, service HTTP (de type REST) ou service Web SOAP.
Utilisez un objet distant pour accéder aux types de services de données suivants :
8
• Services ColdFusion
• Services PHP au format AMF
• BlazeDS
• LiveCycle Data Services
Pour plus d’informations sur l’utilisation de l’assistant LiveCycle Service Discovery, voir Utilisation de LiveCycle
Discovery.
Pour tout service auquel l’accès s’effectue par le biais d’un objet distant, créez un projet Flex configuré pour le type de
serveur d’application approprié. L’assistant de nouveau projet Flex vous guide au cours des étapes de configuration
d’un projet pour les types de serveurs d’applications répertoriés ci-dessous.
Type de serveurServices d’objets distants pris en charge
PHP
ColdFusion
J2EE
Vous pouvez vous connecter à des services HTTP et Web SOAP à partir de n’importe quel projet Flex, y compris les
projets sans technologie de serveur spécifiée.
• Services PHP au format AMF
• ColdFusion Flash Remoting
• BlazeDS
• LiveCycle Data Services
• BlazeDS
• LiveCycle Data Services
Un projet configuré pour accéder à un objet distant peut accéder uniquement à un service d’objets distants pour lequel
il est configuré. Par exemple, vous ne pouvez pas accéder à un service PHP basé sur AMF à partir d’un projet configuré
pour ColdFusion. Cependant, vous pouvez vous connecter à un service PHP à partir d’un tel projet si vous vous y
connectez en tant que service Web ou HTTP.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Voir aussi
« Présentation de l’accès aux services de données » à la page 1
Changement du type de serveur d’un projet
Flash Builder vous avertit si vous tentez d’accéder à un service pour lequel aucun projet Flex n’est configuré. Si le projet
Flex ne spécifie pas la configuration de serveur correcte, Flash Builder fournit un lien vers la boîte de dialogue
Propriétés du projet. Cette boîte de dialogue vous permet de configurer le projet afin d’accéder au service de données.
Flash Builder vous avertit par exemple lorsque vous tentez d’accéder à un service PHP basé sur AMF à partir d’un
projet qui ne spécifie aucune configuration de serveur.
Si le projet Flex a été précédemment configuré pour l’accès à un autre type de service, configurez un nouveau projet
Flex ou modifiez la configuration du projet actuel. En cas de modification de la configuration de serveur d’un projet,
vous ne pourrez plus accéder aux services précédemment configurés. Par exemple, si vous modifiez une configuration
de projet de ColdFusion vers PHP, les services ColdFusion auxquels vous tenterez d’accéder dans le projet ne seront
plus disponibles.
Vous pouvez accéder à différents types de services à partir du même projet en configurant des services en tant que
services HTTP ou Web.
9
Fichier de régulation interdomaines
Un fichier de régulation interdomaines est requis pour l’accès aux services se trouvant sur un autre domaine à partir
du fichier SWF pour l’application. Situés dans le même domaine que l’application, les services au format AMF ne
nécessitent généralement pas de fichier de régulation interdomaines.
Connexion à des services de données
Utilisez l’assistant de service Flash Builder pour vous connecter à un service de données.
Pour les services d’objets distants, vous créez généralement un projet Flex ayant un type de serveurs d’applications
correspondant. Flash Builder introspecte le service et peut configurer des types de retour pour les données renvoyées
par le service.
Les services d’objets distants incluent les services de données implémentés dans ColdFusion, PHP, BlazeDS et
LiveCycle Data Services.
Pour plus d’informations sur l’utilisation de l’assistant LiveCycle Service Discovery, voir Utilisation de LiveCycle
Discovery.
Voir aussi
« Création d’un projet Flex pour l’accès aux services de données » à la page 8
Accès aux services ColdFusion
Utilisez l’assistant de service Flash Builder pour accéder au service de données ColdFusion implémenté en tant que
composant ColdFusion (CFC). Flex accède à ces services en qualité d’objets distants.
Utilisez un projet Flex spécifiant ColdFusion comme type de serveurs d’applications. Lors de la création du projet Flex,
activez l’option Utiliser le service d’accès aux objets distants et sélectionnez ColdFusion Flash Remoting.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Connexion à des services de données ColdFusion
Cette procédure part du principe que vous avez implémenté un service ColdFusion et créé un projet Flex afin d’accéder
aux services ColdFusion.
1 Dans le menu Données de Flash Builder, sélectionnez Connexion à ColdFusion pour ouvrir l’assistant de
connexion à un service.
2 Dans la boîte de dialogue Configuration du service ColdFusion, recherchez l’emplacement du fichier CFC qui
implémente le service.
Remarque : si vous n’avez pas implémenté de service ColdFusion, Flash Builder peut générer un exemple de service à
partir d’un tableau de base de données simple. Utilisez l’exemple généré en guise d’illustration de l’accès aux services
de données. Voir « Génération d’un exemple de service ColdFusion à partir d’un tableau de base de données » à la
page 10.
3 (Facultatif) Modifiez les détails du service.
Nom du serviceSpécifiez un nom pour le service.
Flash Builder génère un nom pour le service, basé le nom du fichier du service.
Les noms possibles pour un service sont soumis à certaines restrictions. Voir « Affectation de noms
aux services de données » à la page 20.
10
Package de servicesSpécifiez un nom pour le package contenant les fichiers ActionScript générés qui accèdent au
Package du type de
données
service.
Flash Builder génère un package basé sur le nom du service et le place dans un package
Spécifiez un nom pour le package contenant les fichiers de classe ActionScript générés qui
définissent les types de données récupérés à partir du service.
Par défaut, Flash Builder crée le package
valueObjects.
services.
4 (Facultatif) Cliquez sur Suivant pour afficher les opérations de service.
5 Cliquez sur Terminer pour générer des fichiers ActionScript qui accèdent au service.
Remarque : une fois la connexion établie, vous pouvez modifier les propriétés du service. Sélectionnez le service dans la
vue Données/Services. Dans le menu contextuel, sélectionnez Propriétés.
Prochaine étape : « Configuration des types de données pour les opérations de service de données » à la page 27.
Génération d’un exemple de service ColdFusion à partir d’un tableau de base de données
Flash Builder peut générer un exemple de service ColdFusion que vous pouvez utiliser en tant que prototype pour vos
propres services. L’exemple de service accède à un tableau de base de données simple et dispose de méthodes de
création, de lecture, de mise à jour et de suppression.
Flash Builder configure les types de données de retour pour les services générés et active des fonctionnalités d’accès
aux données telles que la pagination ou la gestion de données.
Important : utilisez le service généré uniquement dans un environnement de développement fiable. Le code généré
permet à toute personne disposant d’un accès réseau à votre serveur d’accéder aux données du tableau de données et de
les modifier ou supprimer. Avant de déployer ce service, assurez-vous d’augmenter la protection et de restreindre l’accès
de façon adéquate. Pour plus d’informations sur la rédaction de services sécurisés, voir Sécurisation des services de
données.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
La procédure suivante part du principe que vous avez créé un projet Flex pour accéder aux services ColdFusion et
disposez de sources de données ColdFusion.
1 Dans le menu Données de Flash Builder, sélectionnez Connexion à ColdFusion pour ouvrir l’assistant de
connexion à un service.
2 Dans la boîte de dialogue Configuration du service ColdFusion, cliquez sur le lien afin de générer un exemple de
service.
3 Sélectionnez l’option Générer à partir d’une source de données RDS et indiquez une source de données et une table
ColdFusion.
Si la table ne définit pas de clé primaire, sélectionnez-en une.
Remarque : en l’absence de source de données ColdFusion disponible, sélectionnez l’option Générer à partir d’un
modèle. Flash Builder rédige un exemple de composant ColdFusion (CFC) avec des opérations de service courantes.
Supprimez les marques de commentaires de certaines fonctions du CFC et modifiez les opérations pour créer un
exemple de service que vous pourrez utiliser comme prototype.
4 Utilisez l’emplacement par défaut ou spécifiez-en un nouveau. Cliquez sur OK.
Flash Builder génère l’exemple de service. Modifiez le nom du service et les emplacements de package afin de
remplacer les valeurs par défaut.
11
5 (Facultatif) Cliquez sur Suivant pour afficher les opérations du service.
6 Cliquez sur Terminer.
Flash Builder génère des fichiers ActionScript qui accèdent à l’exemple de service. Il ouvre également l’exemple de
service dans un éditeur du système enregistré pour l’édition de fichiers ColdFusion CFC.
Accès aux services PHP
Utilisez l’assistant de service Flash Builder pour vous connecter à un service de données implémenté sous PHP. Flex
utilise le format AMF (Action Message Format) pour sérialiser les données entre l’application client et le service de
données. Flash Builder installe la structure Zend AMF pour fournir un accès aux services implémentés sous PHP. Voir
« Installation de Zend Framework » à la page 21.
Accédez aux services de données PHP à partir d’un projet Flex dont le type de serveurs d’applications spécifié est PHP.
Le service de données doit être disponible sous la racine Web définie à la configuration du projet pour PHP. Placez le
service dans un répertoire de services, comme illustré ci-dessous :
<webroot>/MyServiceFolder/services
Voir aussi
« Création d’un projet Flex pour l’accès aux services de données » à la page 8
Connexion à des services de données PHP
Cette procédure part du principe que vous avez implémenté un service PHP et créé un projet Flex afin d’accéder aux
services PHP.
1 Dans le menu Données de Flash Builder, sélectionnez Connexion à PHP pour ouvrir l’assistant de connexion à un
service.
2 Dans la boîte de dialogue Configuration du service PHP, recherchez le fichier PHP implémentant le service.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Remarque : si vous n’avez pas implémenté de service PHP, Flash Builder peut générer un exemple de service à partir
d’un tableau de base de données simple. Utilisez l’exemple généré en guise d’illustration de l’accès aux services de
données. Voir « Génération d’un exemple de service PHP à partir d’un tableau de base de données » à la page 12.
3 (Facultatif) Modifiez les détails du service.
Nom du serviceSpécifiez un nom pour le service.
Flash Builder génère un nom pour le service, basé le nom du fichier du service.
Les noms possibles pour un service sont soumis à certaines restrictions. Voir « Affectation de noms
aux services de données » à la page 20.
Package de servicesSpécifiez un nom pour le package contenant les fichiers ActionScript générés qui accèdent au service.
Flash Builder génère un package basé sur le nom du service et le place dans un package
services.
12
Package du type de
données
Spécifiez un nom pour le package contenant les fichiers de classe ActionScript générés qui
définissent les types de données récupérés à partir du service.
Par défaut, Flash Builder crée le package
valueObjects.
4 Cliquez sur Suivant pour afficher les opérations de service.
Si vous ne disposez pas de la version prise en charge de Zend Framework pour l’accès aux services PHP, Flash
Builder vous invite à en installer la version minimale. Voir « Installation de Zend Framework » à la page 21.
5 Cliquez sur Terminer.
Flash Builder génère des fichiers ActionScript qui accèdent au service.
Remarque : une fois la connexion établie, vous pouvez modifier les propriétés du service. Sélectionnez le service dans la
vue Données/Services. Dans le menu contextuel, sélectionnez Propriétés.
Prochaine étape : « Configuration des types de données pour les opérations de service de données » à la page 27.
Génération d’un exemple de service PHP à partir d’un tableau de base de données
Flash Builder peut générer un exemple de service PHP que vous pouvez utiliser en tant que prototype pour vos propres
services. L’exemple de service accède à un tableau de base de données MySQL simple et dispose de méthodes de
création, de lecture, de mise à jour et de suppression.
Flash Builder configure les types de données de retour pour les services générés et active des fonctionnalités d’accès
aux données telles que la pagination ou la gestion de données.
Important : utilisez le service généré uniquement dans un environnement de développement fiable. Le code généré
permet à toute personne disposant d’un accès réseau à votre serveur d’accéder aux données du tableau de données et de
les modifier ou supprimer. Avant de déployer ce service, assurez-vous d’augmenter la protection et de restreindre l’accès
de façon adéquate. Pour plus d’informations sur la rédaction de services sécurisés, voir Sécurisation des services de
données.
La procédure suivante part du principe que vous avez créé un projet Flex pour accéder aux services PHP et disposez
de sources de données MySQL.
1 Dans le menu Données de Flash Builder, sélectionnez Connexion à PHP pour ouvrir l’assistant de connexion à un
service.
2 Dans la boîte de dialogue Configuration du service PHP, cliquez sur le lien afin de générer un exemple de service.
3 Sélectionnez Générer à partir d’une base de données et spécifiez les informations de connexion à la base de données.
Cliquez sur Connexion à la base de données.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Remarque : en l’absence de source de données PHP disponible, sélectionnez l’option Générer à partir d’un modèle.
Flash Builder rédige un exemple de projet avec des opérations de service courantes. Supprimez les marques de
commentaires de certaines zones du projet et modifiez les opérations pour créer un exemple de service que vous
pourrez utiliser comme prototype.
4 Sélectionnez un tableau dans la base de données et spécifiez la clé primaire.
5 Utilisez l’emplacement par défaut ou spécifiez-en un nouveau. Cliquez sur OK.
Si vous ne disposez pas de la version prise en charge de Zend Framework pour l’accès aux services PHP, Flash
Builder vous invite à en installer la version minimale. Voir « Installation de Zend Framework » à la page 21.
Flash Builder génère l’exemple de service. Modifiez le nom du service et les emplacements de package afin de
remplacer les valeurs par défaut.
6 (Facultatif) Cliquez sur Suivant pour afficher les opérations du service.
7 Cliquez sur Terminer.
Flash Builder génère des fichiers ActionScript qui accèdent à l’exemple de service. Il ouvre également l’exemple de
service dans un éditeur du système enregistré pour l’édition de fichiers PHP.
Accès aux services HTTP
Utilisez l’assistant de service Flash Builder pour vous connecter aux services HTTP basés sur REST. Vous pouvez vous
connecter à des services HTTP à partir de n’importe quel projet Flex. Il n’est pas nécessaire de spécifier une technologie
de serveur pour le projet.
13
Un fichier de régulation interdomaines est requis pour l’accès aux services dont le domaine ne correspond pas à celui
du fichier SWF de l’application client. Voir Utilisation de fichiers de régulation interdomaines.
Configuration des services HTTP
Il existe plusieurs façons de configurer l’accès aux services HTTP basés sur REST. L’assistant de configuration du
service HTTP prend en charge les options suivantes.
• URL de base en tant que préfixe
Cette option s’avère pratique pour accéder à plusieurs opérations à partir d’un service unique. Si vous spécifiez une
URL de base vers le service, il vous suffit ensuite de spécifier pour chaque opération le chemin relatif vers les
opérations HTTP.
L’utilisation d’une URL de base ne permet pas d’accéder à plusieurs services.
• URL avec paramètres de requête
Lors de la spécification d’une URL vers une opération, vous pouvez inclure les paramètres de requête pour les
opérations de service. L’assistant de configuration du service HTTP renseigne le tableau Paramètres avec chaque
paramètre inclus dans l’URL de l’opération.
• Services RESTful avec des paramètres délimités
Flash Builder prend en charge l’accès aux services RESTful qui utilisent des paramètres délimités au lieu du
paramètre de requête GET. Par exemple, supposons que vous utilisez l’URL suivante pour accéder à un service
RESTful :
http://restfulService/items/itemID
Utilisez des accolades ({}) pour spécifier les paramètres de l’URL de l’opération, Par exemple :
http://restfulService/{items}/{itemID}
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
L’assistant de configuration du service HTTP renseigne ensuite le tableau Paramètres.
Nom Type de donnéesType de paramètre
itemsStringURL
itemIDStringURL
Lorsque vous spécifiez des paramètres pour un service RESTful, Type de données et Type de paramètre sont
toujours configurés en tant que String et URL respectivement.
Remarque : vous pouvez associer des paramètres de service RESTful avec des paramètres de requête lors de la
spécification de l’URL vers une opération.
• Chemin vers un fichier local pour une URL d’opération
Pour une URL d’opération, vous pouvez spécifier un chemin vers un fichier local qui implémente les services
HTTP. Par exemple, spécifiez ce qui suit pour une URL d’opération :
c:/MyHttpServices/MyHttpService.xml
• Ajout d’opérations GET et POST
Vous pouvez ajouter des opérations supplémentaires lors de la configuration d’un service HTTP. Cliquez sur le
bouton Ajouter du tableau Opérations.
14
Spécifiez la méthode de l’opération (GET ou POST).
• Ajout de paramètres à une opération
Vous pouvez ajouter des paramètres à l’opération que vous aurez préalablement sélectionnée dans le tableau
Opérations. Sélectionnez une opération, puis cliquez sur le bouton Ajouter du tableau Paramètres.
Spécifiez un nom et un type de données pour le paramètre ajouté. Le type de paramètre (GET ou POST) correspond
à la méthode de l’opération.
• Type de contenu pour les opérations POST
Pour les opérations POST, vous pouvez spécifier le type de contenu. Il peut s’agir de
urlencoded ou de application/xml.
Si vous sélectionnez
application/xml comme type de contenu, Flash Builder génère un paramètre de requête non
application/x-www-form-
modifiable, dont le nom par défaut est strXML. Vous pourrez spécifier le paramètre actuel à l’exécution.
Nom Type de donnéesType de paramètre
strXMLStringPOST
Vous ne pouvez pas ajouter de paramètres supplémentaires pour le type de contenu
application/xml.
Connexion à des services HTTP
1 Dans le menu Données de Flash Builder, sélectionnez Connexion à HTTP pour ouvrir l’assistant de connexion à
un service.
2 (Facultatif) Spécifiez une URL de base à utiliser en tant que préfixe pour toutes les opérations.
3 Sous Opérations, spécifiez les éléments suivants pour chaque opération à laquelle vous souhaitez accéder :
• Méthode de l’opération (GET ou POST)
• URL de l’opération de service
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Vous pouvez inclure dans l’URL n’importe quel paramètre d’opération. Utilisez des accolades ({}) pour
spécifier des paramètres de service de style REST.
Flash Builder prend en charge l’accès aux protocoles suivants :
http://
https://
Chemins d’accès standard tels que C:/ ou /Applications/
• Nom de l’opération
4 Spécifiez le nom et le type de données de chaque paramètre d’opération de l’URL sélectionnée.
5 (Facultatif) Cliquez sur Ajouter ou Supprimer pour ajouter ou supprimer des paramètres pour l’opération
sélectionnée.
6 (Facultatif) Modifiez les détails du service.
Nom du serviceSpécifiez un nom pour le service.
Flash Builder génère un nom pour le service, basé le nom du fichier du service.
Les noms possibles pour un service sont soumis à certaines restrictions. Voir « Affectation de noms
aux services de données » à la page 20.
15
Package de servicesSpécifiez un nom pour le package contenant les fichiers ActionScript générés qui accèdent au
Package du type de
données
service.
Flash Builder génère un package basé sur le nom du service et le place dans un package
Spécifiez un nom pour le package contenant les fichiers de classe ActionScript générés qui
définissent les types de données récupérés à partir du service.
Par défaut, Flash Builder crée le package
valueObjects.
services.
7 (Facultatif) Modifiez le nom du package généré pour le service.
8 Cliquez sur Terminer.
Flash Builder génère des fichiers ActionScript qui accèdent au service.
Une fois la connexion au service HTTP établie, configurez les types de retour des opérations de service. Lors de la
configuration du type de retour, les types de paramètres de l’opération sont également configurés. Voir
« Configuration des types de données pour les opérations de service de données » à la page 27.
Remarque : une fois la connexion établie, vous pouvez modifier les propriétés du service. Sélectionnez le service dans la
vue Données/Services. Dans le menu contextuel, sélectionnez Propriétés.
Prochaine étape : « Configuration des types de données pour les opérations de service de données » à la page 27.
Accès à un fichier XML implémentant des services HTTP
Vous pouvez accéder à un fichier XML statique qui implémente un service HTTP. Ce fichier XML statique peut être
un fichier local ou être disponible sous la forme d’une URL.
Le service utilise une méthode GET qui renvoie une réponse XML. Cette fonctionnalité est utile pour apprendre à
connaître les services HTTP dans Flex et pour établir des prototypes de données fictives dans les applications client.
Lors de l’accès au service, spécifiez le nœud renvoyant la réponse XML. Flash Builder utilise ce nœud pour configurer
automatiquement un type de retour pour les données. Une fois la connexion au service établie, vous pouvez lier des
opérations du service à des composants d’interface utilisateur.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Connexion à un fichier de service XML
1 Dans le menu Données de Flash Builder, sélectionnez Connexion à HTTP pour ouvrir l’assistant de connexion à
un service.
2 Spécifiez Fichier local ou URL, puis accédez au fichier.
3 Sélectionnez un nœud dans le fichier contenant la réponse souhaitée.
Indiquez si la réponse est un tableau Array.
Flash Builder configure un type de retour pour le nœud sélectionné.
4 Modifiez les détails du service.
Nom du serviceSpécifiez un nom pour le service.
Flash Builder génère un nom pour le service, basé le nom du fichier du service.
Les noms possibles pour un service sont soumis à certaines restrictions. Voir « Affectation de noms aux
services de données » à la page 20.
Package de servicesSpécifiez un nom pour le package contenant les fichiers ActionScript générés qui accèdent au service.
Flash Builder génère un package basé sur le nom du service et le place dans un package
services.
16
Package du type de
données
Spécifiez un nom pour le package contenant les fichiers de classe ActionScript générés qui définissent
les types de données récupérés à partir du service.
Par défaut, Flash Builder crée le package
valueObjects.
5 (Facultatif) Modifiez le nom du package généré pour le service.
6 Cliquez sur Terminer.
Flash Builder génère des fichiers ActionScript qui accèdent au service.
Remarque : une fois la connexion établie, vous pouvez modifier les propriétés du service. Sélectionnez le service dans la
vue Données/Services. Dans le menu contextuel, sélectionnez Propriétés.
Accès aux services Web
Utilisez l’assistant de service Flash Builder pour vous connecter aux services Web (SOAP). Vous pouvez vous
connecter à des services Web à partir de n’importe quel projet Flex. Il n’est pas nécessaire de spécifier une technologie
de serveur pour le projet.
Un fichier de régulation interdomaines est requis pour l’accès aux services se trouvant sur un autre domaine à partir
du fichier SWF pour l’application client.
Voir aussi
Utilisation des fichiers de régulation interdomaines
Connexion à des services Web
1 Dans le menu Données de Flash Builder, sélectionnez Connexion au service Web pour ouvrir l’assistant de
connexion à un service.
2 (BlazeDS/Data Services) Si vous avez installé LiveCycle Data Services ou BlazeDS, vous pouvez accéder au service
Web via un proxy.
Sélectionnez l’option Par une destination proxy BlazeDS/Data Services.
Spécifiez une destination. Cliquez sur Suivant et passez à l’étape 5.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Remarque : l’option d’accès aux services Web via un proxy est activée uniquement si le type de serveurs d’applications
spécifié pour le projet Flex est J2EE.
3 Saisissez un URI pour le service SOAP.
4 (Facultatif) Modifiez les détails du service.
Nom du serviceSpécifiez un nom pour le service.
Flash Builder génère un nom pour le service basé sur l’URI WSDL.
Les noms possibles pour un service sont soumis à certaines restrictions. Voir « Affectation de noms aux
services de données » à la page 20.
Package de servicesSpécifiez un nom pour le package contenant les fichiers ActionScript générés qui accèdent au service.
Flash Builder génère un package basé sur le nom du service et le place dans un package
services.
17
Package du type de
données
Spécifiez un nom pour le package contenant les fichiers de classe ActionScript générés qui définissent
les types de données récupérés à partir du service.
Par défaut, Flash Builder crée le package
dataValues.
5 (Facultatif) Configurez la génération de code pour le service.
Service
Port
Liste d’opérationsSélectionnez les opérations du service auquel vous souhaitez accéder dans votre application client.
Sélectionnez l’un des services disponibles.
Flash Builder génère un nom pour le service basé sur l’URI WSDL.
6 Cliquez sur Terminer.
Flash Builder génère des fichiers ActionScript qui accèdent au service.
Remarque : une fois la connexion établie, vous pouvez modifier les propriétés du service. Sélectionnez le service dans la
vue Données/Services. Dans le menu contextuel, sélectionnez Propriétés.
Une fois la connexion au service Web établie, configurez les types de retour des opérations de service. Pour plus
d’informations, voir « Configuration des types de données pour les opérations de service de données » à la page 27.
Accès à BlazeDS
Vous pouvez accéder aux services BlazeDS uniquement si vous avez installé Adobe® BlazeDS et configuré un serveur
RDS (Remote Development Services). Pour plus d’informations sur l’installation et la configuration de BlazeDS, voir
la documentation de LiveCycle Data Services ES.
En règle générale, vous accédez aux services de données BlazeDS à partir d’un projet Flex dont le type de serveurs
d’applications spécifié est J2EE.
Voir aussi
« Création d’un projet Flex pour l’accès aux services de données » à la page 8
Connexion à des services BlazeDS
Cette procédure part du principe que vous avez installé BlazeDS, configuré un serveur de développement distant et
créé un projet Flex afin d’accéder aux services BlazeDS.
1 Dans le menu Données de Flash Builder, sélectionnez Connexion à BlazeDS pour ouvrir l’assistant de connexion à
un service.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
2 Sélectionnez une destination à importer.
3 (Facultatif) Modifiez les détails du service.
Nom du serviceSpécifiez un nom pour le service.
Flash Builder génère un nom pour le service basé sur la destination.
Les noms possibles pour un service sont soumis à certaines restrictions. Voir « Affectation de noms aux
services de données » à la page 20.
Package de servicesSpécifiez un nom pour le package contenant les fichiers ActionScript générés qui accèdent au service.
Flash Builder génère un package basé sur le nom du service et le place dans un package
services.
18
Package du type de
données
Spécifiez un nom pour le package contenant les fichiers de classe ActionScript générés qui définissent
les types de données récupérés à partir du service.
Par défaut, Flash Builder crée le package
valueObjects.
4 Cliquez sur Terminer.
Flash Builder génère des fichiers ActionScript qui accèdent au service.
Remarque : une fois la connexion établie, vous pouvez modifier les propriétés du service. Sélectionnez le service dans la
vue Données/Services. Dans le menu contextuel, sélectionnez Propriétés.
Accès à LiveCycle Data Services
Vous pouvez accéder aux services disponibles à partir de LiveCycle Data Services uniquement si vous avez installé
LiveCycle Data Services et configuré un serveur RDS (Remote Development Services). Pour plus d’informations, voir
la documentation de LiveCycle Data Services.
Vous pouvez accéder à LiveCycle Data Services à partir d’un projet Flex dont le type de serveur d’applications spécifié
est soit J2EE soit ColdFusion.
Types de service pour LiveCycle Data Services
Lors de la connexion à LiveCycle Data Services, les types de services de données suivants sont disponibles en tant que
destinations.
• Service distant
Les services distants sont implémentés à l’aide de la définition de types AMF. Ils ne fournissent aucune gestion de
données côté serveur. Vous pouvez utiliser les outils Flash Builder pour configurer la gestion de données côté client.
Voir « Activation de la gestion des données » à la page 34.
• Service de données
Les services de données implémentent la gestion de données côté serveur. Pour plus d’informations, voir la
documentation LiveCycle Data Services.
• Service Web
Les services Web sont disponibles par le biais d’un proxy LiveCycle Data Services configuré en tant que destination
LiveCycle Data Services. La définition de type côté serveur n’est généralement pas fournie lors de la connexion à un
service Web.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Configuration et gestion de types de données
Flash Builder fournit des outils pour la configuration et la gestion des données côté client. Les outils Flash Builder
disponibles dépendent du type de destination LiveCycle Data Services.
• Service distant
Les services distants implémentent la définition de types AMF sur le service. Il n’est pas nécessaire de configurer
des types de données de retour pour les destinations de service distant.
Cependant, vous pouvez utiliser Flash Builder pour générer du code pour la gestion de données côté client. Voir
« Activation de la gestion des données » à la page 34.
• Service de données
Les services de données implémentent les types de données côté serveur. Il n’est pas nécessaire de configurer des
types de données de retour pour les destinations de service de données.
Les destinations de service de données fournissent également la gestion des données côté serveur. Vous ne pouvez
pas utiliser la gestion des données côté client avec les destinations de service de données.
• Service Web
En règle générale, les destinations de service Web disponibles par le biais d’un proxy LiveCycle Data Service
n’implémentent pas la définition de type côté serveur. Vous pouvez utiliser les outils Flash Builder pour configurer
des types de retour pour les opérations de service Web. Voir « Configuration des types de données pour les
opérations de service de données » à la page 27.
19
Vous pouvez utiliser Flash Builder pour générer du code pour la gestion des données côté client. Voir « Activation
de la gestion des données » à la page 34.
Connexion aux destinations LiveCycle Data Service (destinations de service de données et
de service distant)
Cette procédure part du principe que vous avez installé LiveCycle Data Services, configuré un serveur de
développement distant et créé un projet Flex afin d’accéder aux services LCDS.
1 Dans le menu Données de Flash Builder, sélectionnez Connexion aux données/services pour ouvrir l’assistant de
connexion à un service.
2 Dans la boîte de dialogue Sélection d’un type de service, choisissez LCDS. Cliquez sur Suivant.
3 Saisissez votre identifiant de connexion, le cas échéant.
4 (Facultatif) Modifiez les détails du service.
Nom du serviceN’indiquez aucun nom de service. Flash Builder génère un nom de service. Flash Builder génère un
Package de servicesSpécifiez un nom pour le package contenant les fichiers ActionScript générés qui accèdent au service.
DestinationsSpécifiez une ou plusieurs destinations disponibles à partir du serveur LiveCycle Data Services.
Package du type de
données
nom pour le service basé sur la destination.
Flash Builder génère un package basé sur le nom du service et le place dans un package
Spécifiez un nom pour le package de type de données. Ce package contient les fichiers de classe
ActionScript générés qui définissent les types de données récupérés à partir du service.
Par défaut, Flash Builder crée le package valueObjects.
services.
5 Cliquez sur Terminer.
Flash Builder génère des fichiers ActionScript qui accèdent au service.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Remarque : une fois la connexion établie, vous pouvez modifier les propriétés du service. Sélectionnez le service dans la
vue Données/Services. Dans le menu contextuel, sélectionnez Propriétés.
Connexion aux destinations LiveCycle Data Service (destinations de service Web)
Cette procédure part du principe que vous avez installé LiveCycle Data Services, configuré un serveur de
développement distant (RDS) et créé un projet Flex pour l’accès aux services DS.
1 Dans le menu Données de Flash Builder, sélectionnez Connexion aux données/services pour ouvrir l’assistant de
connexion à un service.
2 Dans la boîte de dialogue Sélection d’un type de service, choisissez Service Web. Cliquez sur Suivant.
3 Sélectionnez l’option Par une destination proxy LCDS/BlazeDS.
4 Saisissez votre identifiant de connexion, le cas échéant.
5 Sélectionnez la destination.
6 (Facultatif) Modifiez les détails du service. Cliquez sur Suivant.
Nom du serviceSpécifiez un nom pour le service.
Flash Builder génère un nom pour le service basé sur le nom de la destination.
Les noms possibles pour un service sont soumis à certaines restrictions. Voir « Affectation de noms aux
services de données » à la page 20.
20
Package de servicesSpécifiez un nom pour le package contenant les fichiers ActionScript générés qui accèdent au service.
services.
Package du type de
données
Flash Builder génère un package basé sur le nom du service et le place dans un package
Spécifiez un nom pour le package contenant les fichiers de classe ActionScript générés qui définissent
les types de données récupérés à partir du service.
Par défaut, Flash Builder crée le package
dataValues.
7 (Facultatif) Configurez la génération de code pour le service.
Service
Port
Liste d’opérationsSélectionnez les opérations du service auquel vous souhaitez accéder dans votre application client.
Sélectionnez un service et un port à partir des services et ports disponibles.
8 Cliquez sur Terminer.
Flash Builder génère des fichiers ActionScript qui accèdent au service.
Remarque : une fois la connexion établie, vous pouvez modifier les propriétés du service. Sélectionnez le service dans la
vue Données/Services. Dans le menu contextuel, sélectionnez Propriétés.
Voir aussi
« Création d’un projet Flex pour l’accès aux services de données » à la page 8
Affectation de noms aux services de données
Il existe des restrictions sur les noms autorisés pour les services de données dont l’accès s’effectue à partir de Flash
Builder. Certaines restrictions ne sont pas apparentes tant que vous ne compilez pas votre application.
Les règles d’attribution des noms pour les services sont :
• Le nom du service ne peut pas commencer par un nombre.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
• Les noms de service ne peuvent pas être des mots-clés ActionScript.
• Vous ne pouvez pas utiliser un nom de classe ActionScript, y compris les classes personnalisées, en tant que nom
de service.
• (PHP uniquement) Flash Builder ne peut pas importer un service dont le nom comporte des traits de soulignement.
Remarque : il est recommandé d’utiliser des noms de service différant des noms de vos fichiers MXML.
Installation de Zend Framework
Lors de l’accès initial aux services PHP, Flash Builder détermine si la version de Zend Framework prise en charge est
installée. Si cette version est introuvable, Flash Builder vous invite à en confirmer l’installation. Si vous acceptez, Flash
Builder installe une version minimale de Zend Framework. Si vous refusez, installez manuellement Zend Framework
si vous souhaitez accéder aux services PHP.
Installation par défaut de Flash Builder
Flash Builder installe Zend Framework dans un dossier ZendFramework situé dans le répertoire racine de votre serveur
Web :
21
<web root>/ZendFramework/
Pour les projets Flex accédant aux services PHP, Flash Builder crée les fichiers de configuration suivants dans le dossier
de sortie du projet :
• amf_config.ini
• gateway.php
Serveurs de production
Pour les serveurs de production, Adobe vous recommande de déplacer le dossier ZendFramework hors de la racine
Web. Mettez à jour la variable
Si la variable
l’installation Zend Framework.
zend_path est commentée, supprimez-en les marques de commentaire. Spécifiez l’emplacement de
zend_path définie dans le fichier amf_config.ini.
Installation manuelle de Zend Framework
Vous avez la possibilité d’installer manuellement Zend Framework.
1 Téléchargez la dernière version de Zend Framework.
Vous pouvez installer le package minimal ou le package complet. Flash Builder installe le package minimal.
2 Extrayez la version téléchargée dans un emplacement du système.
3 Dans le dossier du projet Flex permettant d’accéder aux services PHP, mettez à jour la variable zend_path définie
dans le fichier
Si la variable
l’emplacement de l’installation Zend Framework.
amf_config.ini.
zend_path est commentée, supprimez-en le commentaire. Spécifiez le chemin absolu vers
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Dépannage d’une installation Zend Framework
Voici quelques conseils pour résoudre les erreurs susceptibles de survenir lors de la connexion à Zend Framework.
Installation manuelle de Zend Framework
Si vous avez installé manuellement Zend Framework, examinez la variable zend_path dans le fichier amf_config.ini.
22
Le fichier
Vérifiez ce qui suit :
amf_config.ini se trouve dans le dossier de sortie du projet.
• zend_amf n’est pas commenté.
• Le chemin spécifié vers votre installation Zend Framework est correct :
• Il s’agit d’un chemin absolu vers une destination située sur le système de fichiers local. Vous ne pouvez pas
spécifier un chemin vers une ressource réseau mappée.
• Le chemin mène au dossier de bibliothèque de l’installation Zend Framework. Habituellement, le dossier de
bibliothèque est situé dans les emplacements suivants :
Si Zend Framework a été installé par Flash Builder, vérifiez ce qui suit :
• L’emplacement du dossier racine Web
Flash Builder installe Zend Framework dans le dossier racine Web du projet. Vérifiez-en l’emplacement.
Sélectionnez Projet > Propriétés > Serveur Flex.
• Assurez-vous que le serveur Web est configuré pour utiliser PHP.
• La variable zend_path du fichier amf_config.ini
Le fichier amf_config.ini se trouve dans le dossier de sortie du projet.
Vérifiez ce qui suit :
• zend_amf n’est pas commenté.
• Le chemin spécifié pointe vers l’installation Zend Framework à la racine Web du projet.
• Il s’agit d’un chemin absolu vers une destination située sur le système de fichiers local. Vous ne pouvez pas
spécifier un chemin vers une ressource réseau mappée.
Utilisation d’une instance de serveur unique
Une fois la connexion à un service de données établie, chaque application d’un projet peut accéder à ce service. Par
défaut, chaque application crée sa propre instance de service lorsqu’elle accède au serveur.
Vous pouvez modifier ce comportement de sorte qu’un projet ne comporte qu’une seule instance de service. Chaque
application dans le projet accède à la même instance de service. En règle générale, vous créez une instance de serveur
unique lorsque vous souhaitez coordonner l’accès aux données à partir d’applications multiples.
Vous pouvez spécifier l’accès à une seule instance de service par projet ou en tant que préférence pour tous les projets.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Accès à une instance de serveur unique pour un projet
1 Cliquez sur Projet > Propriétés > Données/Services.
2 Sélectionnez la case à cocher pour l’utilisation d’une instance de serveur unique. Cliquez sur OK.
Spécification d’une instance de serveur unique en tant que préférence
1 Ouvrez la boîte de dialogue Préférences.
2 Sélectionnez Flash Builder > Données/Services.
3 Sélectionnez la case à cocher pour l’utilisation d’une instance de serveur unique. Cliquez sur OK.
Génération de l’application client
Vous utilisez l’éditeur de code MXML pour créer une interface utilisateur.
Après avoir défini les composants de l’application à l’aide de l’éditeur de code, vous pouvez lier les données renvoyées
par le service aux composants de l’interface utilisateur. Générez des gestionnaires d’événement en fonction des
interactions de l’utilisateur avec l’application.
23
Vous pouvez aussi générer un formulaire à partir des opérations de service disponibles dans la vue Données/Services.
Liaison d’opérations de service à des contrôles
Utilisez la boîte de dialogue Lier aux données pour lier une opération de service à un composant d’interface utilisateur.
La boîte de dialogue Lier aux données est disponible à partir du menu Données de la barre d’outils dans la vue
Données/Services.
Lorsque vous liez une opération de service à un composant, Flash Builder génère du code MXML et ActionScript pour
accéder à l’opération de service à partir de l’application client.
Types de retour pour les opérations de service
Lorsque vous liez une opération de service à un contrôle, Flash Builder utilise le type des données renvoyées par
l’opération. En règle générale, vous configurez le type de retour pour une opération de service avant de la lier à un
composant.
Si le type de retour d’une opération de service n’a pas été configuré, la boîte de dialogue Lier aux données vous invite
à terminer cette étape.
Voir « Configuration des types de données pour les opérations de service de données » à la page 27.
Liaison d’un contrôle DataGrid à une opération de service (boîte de dialogue Lier aux
données)
Cette procédure part du principe que vous êtes connecté à un service de données.
1 Dans la vue Structure, sélectionnez le contrôle DataGrid. Vous pouvez également placer votre curseur dans la balise
<s:DataGrid> dans l’éditeur MXML.
2 Ouvrez ensuite la boîte de dialogue Lier aux données en sélectionnant l’option Lier aux données du menu Données
de Flash Builder.
3 Sélectionnez Nouvel appel de service, puis un service et une opération.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Si vous avez lié une opération de service à un composant, vous pouvez utiliser ces résultats. Dans ce cas, spécifiez
Résultat d’appel existant et sélectionnez l’opération à utiliser.
4 (Facultatif) Sélectionnez Modifier type de retour.
Sélectionnez Modifier type de retour si vous voulez reconfigurer le type de retour pour l’opération de service.
Si le type de retour de l’opération n’a pas été précédemment configuré, sélectionnez Configurer le type de retour.
Voir « Configuration des types de données pour les opérations de service de données » à la page 27.
5 Cliquez sur OK.
Le composant DataGrid change pour afficher les champs extraits de la base de données.
Voir Configuration de composants DataGrid et AdvancedDataGrid.
6 Enregistrez et exécutez l’application.
Génération d’un appel de service à une opération
Flash Builder peut générer une méthode ActionScript qui appelle une opération de service. Cette méthode n’est pas
liée à un composant d’interface utilisateur, mais peut être utilisée dans le code de l’application.
Outre la méthode ActionScript, Flash Builder génère une propriété CallResponder donnant accès aux données
renvoyées à partir de l’appel de service. Voir « CallResponder » à la page 38.
24
Génération d’un appel de service à une opération
Cette procédure part du principe que vous êtes connecté à un service de données.
1 Dans la vue Données/Services, sélectionnez une opération.
2 Dans le menu contextuel de l’opération, sélectionnez Générer l’appel de service.
Flash Builder génère une méthode pour appeler l’opération et affiche la méthode générée en mode Source dans
l’éditeur MXML. Il crée une propriété CallResponder qui contient le résultat de l’appel de service.
Cette option est également disponible à partir de la barre d’outils Données/Services.
Création d’un formulaire pour une application
Les formulaires sont l’une des méthodes les plus courantes que les applications Web utilisent pour recueillir des
informations des utilisateurs. Flash Builder peut générer des formulaires pour les données obtenues à partir des appels
de service ou pour les types de données personnalisés utilisés pour accéder aux données distantes.
Lors de la génération d’un formulaire, Flash Builder crée un conteneur de présentation Form et ajoute des composants
afin d’afficher ou de modifier les données spécifiques récupérées à partir du service.
Flash Builder génère les types de formulaires suivants.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
FormDescription
Type de donnéesCe formulaire contient les composants représentant les champs d’un type de données.
25
Détail des données principales Le composant « principal » correspond en règle générale à un contrôle de données répertoriant les
Appel de serviceCréez deux formulaires. Le premier spécifie les entrées d’une opération. Le second affiche les données
données obtenues d’un service.
Le formulaire « détaillé » représente des éléments individuels sélectionnés dans le composant
principal.
renvoyées.
Lors de la génération d’un formulaire, définissez les champs à inclure, spécifiez le type du contrôle d’interface
utilisateur utilisé pour représenter chaque champ et indiquez si le formulaire est modifiable ou non.
Création d’un formulaire
Cette procédure indique comment générer un formulaire pour un appel de service. Les procédures pour générer
d’autres types de formulaires sont similaires.
1 Pour exécuter l’assistant Générer le formulaire, sélectionnez une opération depuis la vue Données/Services.
Effectuez ensuite l’une des opérations suivantes :
• Dans le menu contextuel de l’opération, sélectionnez Générer le formulaire.
• Dans le menu Données de Flash Builder, sélectionnez Générer le formulaire.
2 Dans l’assistant Générer le formulaire, sélectionnez Appel de service dans le champ Générer le formulaire pour.
3 Sélectionnez Nouvel appel de service ou Résultat d’appel existant.
Spécifiez Résultat d’appel existant pour utiliser le code généré précédemment pour un appel de service.
Sinon, activez Nouvel appel de service et sélectionnez un service et une opération pour le formulaire.
4 (Facultatif) Les options disponibles sur le formulaire généré varient en fonction de l’opération.
Si l’opération accepte les paramètres, vous pouvez choisir d’inclure un formulaire pour les paramètres.
Si l’opération renvoie une valeur, vous pouvez choisir d’inclure un formulaire pour la valeur renvoyée.
Vous pouvez choisir de rendre le formulaire modifiable ou de le rendre uniquement accessible en lecture.
5 (Facultatif) Configurez les types d’entrée et les types de retour.
Si l’opération sélectionnée dispose de paramètres d’entrée ou renvoie une valeur, vous pouvez configurer le type
d’entrée ou le type de retour.
Configurez les types d’entrée et de retour de l’opération pour pouvoir générer le formulaire. Si vous les avez déjà
configurés précédemment, vous avez ici la possibilité de les configurer à nouveau.
Voir « Configuration des types de données pour les opérations de service de données » à la page 27.
6 Cliquez sur Suivant. Dans la boîte de dialogue Mappage de contrôle de propriété, sélectionnez les champs à inclure
dans le formulaire et le type de contrôle pour représenter les données.
7 Cliquez sur Terminer.
Les formulaires générés par Flash Builder peuvent être superposés. Pour réarranger les formulaires générés, assurezvous d’avoir bien sélectionné et déplacé un formulaire et non un composant de ce dernier.
La sélection de formulaires superposés peut s’avérer difficile. Dans l’éditeur de code, sélectionnez la balise
correspondant à un formulaire.
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Génération d’un formulaire de détails
Pour générer un formulaire de détails, ajoutez un composant de contrôle de données à l’application et liez les résultats
d’une opération au contrôle.
Ajoutez par exemple un composant DataGrid, puis liez à ce composant les résultats d’une opération telle que
getItems_paged().
1 Dans la vue Structure, sélectionnez un contrôle de données tel que DataGrid.
2 Dans le menu Données, sélectionnez Générer le formulaire de détails.
3 Générez le formulaire en suivant les instructions fournies dans le paragraphe Création d’un formulaire.
Création d’un formulaire pour un type de données
Pour générer un formulaire avec des composants représentant les champs d’un type de données personnalisé,
commencez par configurer le type de données. Voir « Configuration des types de données pour les opérations de
service de données » à la page 27.
1 Dans la vue Données/Services, sélectionnez un type de données personnalisé.
2 Dans le menu contextuel, sélectionnez Générer le formulaire.
3 Assurez-vous que l’option Générer le formulaire pour Type de données est sélectionnée, puis choisissez un type de
données.
4 (Facultatif) Rendez le formulaire modifiable si vous le souhaitez.
5 Cliquez sur Terminer.
26
Génération de gestionnaires d’événement pour l’extraction de données
distantes
Lorsque vous reliez une opération de service de données à un composant, Flash Builder crée un gestionnaire
d’événement qui renseigne le composant avec les données extraites du service.
Par exemple, si vous reliez une opération
d’événement
creationComplete. Le composant DataGrid référence le gestionnaire d’événements généré. Les
résultats de l’appel deviennent le fournisseur de données du composant DataGrid.
. . .
protected function dataGrid_creationCompleteHandler(event:FlexEvent):void
{
Lorsque vous exécutez l’application, le gestionnaire d’événement renseigne le composant DataGrid créé avec les
données extraites du service.
Lorsque vous créez des gestionnaires d’événement, vous pouvez accepter les gestionnaires créés ou les remplacer par
des gestionnaires adaptés à vos besoins. Vous pouvez par exemple remplacer le gestionnaire d’événement
creationComplete sur DataGrid par un gestionnaire creationComplete sur Application.
getAllItems() à un DataGrid, Flash Builder génère un gestionnaire
Dernière mise à jour le 16/11/2012
ACCÈS AUX DONNÉES AVEC FLEX
Création d’applications centrées sur les données avec Flash Builder
Vous pouvez également générer ou créer des gestionnaires d’événement pour des contrôles acceptant les interactions
avec l’utilisateur, par exemple les contrôles Button et Text.
Création d’un gestionnaire d’événement pour un composant d’interface utilisateur
1 Créez une application contenant un composant d’interface utilisateur tel que DataGrid ou Button.
2 Flash Builder comporte un assistant de contenu facilitant la génération du gestionnaire d’événement. Appuyez sur
Ctrl+Espace ou Cmd+Espace (Mac) et sélectionnez l’option Générer un gestionnaire d’événement.
3 Flash Builder génère un nom unique pour le gestionnaire d’événement et place ce dernier dans le bloc Script.
Flash Builder met en surbrillance le stub généré pour le gestionnaire d’événement dans l’éditeur de code. Complétez
le code restant pour le gestionnaire d’événement. Utilisez l’assistant de contenu afin de coder le gestionnaire
d’événement.
Configuration des types de données pour les opérations
de service de données
Lors de la connexion à un service de données, Flash Builder doit connaître le type des données renvoyées par une
opération de service. Les types de données pris en charge sont ceux reconnus par AMF pour échanger des données
avec un service de données ou un service distant.
27
De nombreux services de données définissent le type des données renvoyées sur le serveur (définition de type côté
serveur). Toutefois, si le serveur ne définit pas le type, l’application client doit configurer le type des données renvoyées
(définition de type côté client).
Les opérations de service qui spécifient les paramètres doivent également spécifier un type correspondant aux données
auxquelles le service permet d’accéder. La définition de type côté client permet de configurer le type des paramètres
d’entrée.
Lors de la configuration des types pour la définition de type côté client, Flash Builder reconnaît uniquement les types
de données AMF. Le type peut également être un type de données personnalisé représentant des données complexes
ou un type vide pour indiquer que l’opération ne renvoie aucune donnée.
Vous pouvez configurer des types définis par l’utilisateur pour les opérations de service qui renvoient des données
complexes. Si vous récupérez par exemple des enregistrements d’une base de données d’employés, vous allez définir le
retour de données complexes comme Employé. Dans ce cas, le type de données personnalisé pour Employé contient
des entrées pour chaque champ de l’enregistrement de base de données.
Types de données pour la définition de type côté client
Dernière mise à jour le 16/11/2012
Loading...
+ 106 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.