IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Zend Framework PHP Discussion :

Conception autour de Zend_Amf


Sujet :

Zend Framework PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 27
    Par défaut Conception autour de Zend_Amf
    Bonjour,

    J'ai posé une question sur le fil des forums flex mais je n'ai pas obtenu de réponses. Je pense que ma question devrait être ici. La question risque d'être un peu flou car le problème est pour un flou au niveau de la méthode de conception.

    Je veux développer une application en flex/Zend_Amf . La problématique est le framework php et entièrement orienté vers une application php/html/css/js, en tout cas c'est l'impression que j'en ai.

    Par exemple j'imagine bien mon application flex envoie un ordre avec des données et le framework utilise les contrôleurs et action de flex pour le résoudre. Ce qui me semble pas possible à implémenter car ce sont des classes appeler par le service Zend_Server_Amf qui recoit les réquêtes .

    Je suis actuellement en train de prototyper des bouts de code. Mais tout cela me semble flou.

    Si il y en a parmi vous qui développe avec Zf et flex , comment architecturer vous votre application ?

    Merci.

  2. #2
    Membre confirmé
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 144
    Par défaut
    Bonsoir,

    Ba écoute, après une petite expérience sur un projet de fin d'étude aux Gobelins, je ne vois pas ton problème.

    L'application Flex reste une application comme elles sont faites normalement. je me servais juste d'une classe de communication (utilisant URLRequest, URLLoader et Responder) pour "attaquer" le composant Zend_Amf qui n'ai qu'un simple "end-point" sur le serveur.

    Zend_Amf s'occupe simplement d'orienter les requête HTTP sur les services (classes PHP) correspondant.

    Par contre, si tu cherche à utiliser le composant Zend_Amf dans un controller voici la marche à suivre : http://blog.log2e.com/2008/12/14/uti...nd-controller/

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 27
    Par défaut
    Bonjour et merci de me répondre.

    Mon problème est plutôt l'inverse. Je voudrai que la requête suit le trajet suivant : requête -> gateway ZendAmf -> ZendFrontController -> ZendControllerXXX -> ActionYYY du controleur ZendControllerXXX -> /*traitement*/ -> /* envoie de la réponse */

  4. #4
    Membre confirmé
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 144
    Par défaut
    Oui je vois ce que tu veux dire. Par contre j'aimerais comprendre pourquoi tu voudrais utiliser Zend_Amf alors ?

    Pour moi, Zend_Amf est un composant du framework permettant de faire le lien entre une technologie cliente (Flex par exemple) et le serveur. Donc en aucun cas, il ne pourra utiliser une la requête suivante : http://www.ton-domaine.com/action/controller et l'orienter au bon endroit.

    Par contre, comme je te l'ai dis, tu peux encapsuler ton serveur AMF dans un controller qui serais accessible depuis l'url suivante : http://www.ton-domaine.com/gateway (donc GatewayController puis méthode index).

    Ensuite le composant interprètera le service à utiliser. Imaginons que je cherche à appeler une méthode listant les utilisateurs de l'application, côté Flex je chercherai à atteindre UtilisateursService.getListeUtilisateurs.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    // Initialisation du service à appeler (qui sera traduit par Zend_Amf)
    var service :String = 'UtilisateursService.getListeUtilisateurs';
     
    // Création de l'objet NetConnection et connexion à la passerelle
    // (GatewayController)
    var netConnection :NetConnection = new NetConnection();
    netConnection.connect('http://www.ton-domaine.com/gateway');
     
    // Création du Responder et des paramètres
    var responder :Responder = new Responder(resultFunction, faultFunction);
    var tabParams:Array       = new Array(service, responder);
     
    // Ici rien ne t'empèche de rajouter des paramètres
    tabParams.push(unParam);
     
    // Appel du service
    netConnection.call.apply(this, tabParams);
    Ceci sera interpréter par le composant Zend_Amf et il cherchera à utiliser la méthode getListeUtilisateurs de la classe UtilisateursService que tu aura ajouter au serveur soit en utilisant addFunction ou addDirectory.

    Par contre, je n'ai pas essayer d'appeler un autre controlleur dans un service, je ne sais pas ce que cela fait.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 27
    Par défaut
    En effet c'est ce que je suis en train de coder à ma manière mais je trouve cela dommage quand on a toute l'architecture de Zend derrière de ne pas en profiter.

    Un petit exemple : Je sais pas si ca aurait été possible facilement ou si ca l'est facilement. Zend gère automatiquement un certain nombre de failles de sécurités comme XSS, il permet de filtrer les variables à l'entrer du serveur, ... Dans ce que je suis en train de coder je ne passe pas nativement par ses fonctionnalités. Il va falloir que je les reconnectes à la mano.

    Voila pourquoi je veux passer par les mécanismes de Zend.

    merci

Discussions similaires

  1. Problème de conception autour des modèles
    Par Myrza dans le forum Wicket
    Réponses: 1
    Dernier message: 17/01/2012, 10h55
  2. Logistique autour de la conception d'un site en php/mysql
    Par HerQuLe dans le forum Général Conception Web
    Réponses: 4
    Dernier message: 06/06/2008, 17h05
  3. [Concept] Métadatas ?
    Par melinda dans le forum Décisions SGBD
    Réponses: 5
    Dernier message: 10/11/2004, 11h56
  4. [Concept] Réplication
    Par melinda dans le forum Décisions SGBD
    Réponses: 4
    Dernier message: 31/03/2003, 17h29
  5. [Concept] Stabilité d'une base de donnée
    Par lassmust dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 03/07/2002, 16h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo