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

XMLRAD Discussion :

Initialisation de XMLModule


Sujet :

XMLRAD

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2002
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 92
    Points : 55
    Points
    55
    Par défaut Initialisation de XMLModule
    Bonjour,

    J'ai plusieurs XMLModules dans mon application dont 1 principal qui doit être initialisé pour utiliser les autres XMLModules (j'utilise du code Delphi). Le problème apparaît lorsque je veux utiliser un XMLService d'un XMLModule alors que le XMLModule principal n'a pas encore été initialisé, dans ce cas la variable est à nil.

    Comment faire pour initialiser manuellement le XMLModule principal de mon application (dans mon exemple ce serait dans le BeforeXMLService d'un service d'un autre module) ?

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 85
    Points : 99
    Points
    99
    Par défaut
    Une idée rapide :

    Dans tes modules secondaires, dans le OnBeforeDispatch, tu test si ton XMLModuel principal a déjà été initialisé. Si ce n'est pas le cas, tu invoques une action bidon que tu auras mis au préalable dessus, qui servira juste à ce que ton XMLModule s'initialise. Pour invoquer une action, tu peux utiliser l'instruction Invoke.

    A+
    Julien C.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 284
    Points : 349
    Points
    349
    Par défaut
    Pour invoquer un XMLService d'un autre XMLModule, le plus simple reste de faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    XMLCollection.Execute('NomService');
    Là, tout se passe bien.
    Il ne faut pas utiliser
    .
    Nicolas

  4. #4
    RDM
    RDM est déconnecté
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Points : 2 927
    Points
    2 927
    Par défaut
    juste une précision sur ce qu'a dit Nicolas:

    peut etre utilisé uniquement quand le XMLService se trouve dans le module courant.

    Il ne faut pas utiliser la variable globale des modules qui n'est jamais initialisée dans une application XMLRAD
    RDM
    Tout Est Relatif
    Rubrique XMLRAD: http://xmlrad.developpez.com
    FAQ XMLRAD: http://xmlrad.developpez.com/faq/

  5. #5
    Membre du Club
    Inscrit en
    Novembre 2002
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 92
    Points : 55
    Points
    55
    Par défaut
    Alors ca ne fonctionnera pas, mon but est d'utiliser les composants d'accès aux données qui sont sur mon XMLModule principal à partir d'un autre XMLModule mais je ne suis pas sur que le principal est initialisé donc je voulais le faire manuellement mais si je ne peux pas utiliser la variable globale ca n'ira pas.

    Après réflexion : J'avais affecté une valeur à la variable globale du module principal dans le OnCreate ... mais s'il y a plusieurs instances de chaque module pour une application web ce n'est pas bon du tout ... ce qui doit être le cas ....

    Comment faire pour utiliser les composants d'accès aux données d'un autre XMLModule ?

  6. #6
    Membre du Club
    Inscrit en
    Novembre 2002
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 92
    Points : 55
    Points
    55
    Par défaut
    J'ai essayé une autre méthode qui semble être correcte, le module est initialisé s'il ne l'a pas encore été :
    TMonModule(XMLCollection.GetModule('MonModule')).MonComposantDAccesAuxDonnees


  7. #7
    RDM
    RDM est déconnecté
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Points : 2 927
    Points
    2 927
    Par défaut
    la dernière méthode est la bonne pour récupérer une instance de module
    maintenant si tu veux utiliser les composants d'accès:
    XMLCollection.GetDatabase('mondatabase') récupère le composant Database
    XMLCollection.GetQuery('monquery') récupère le composant query

    les méthodes les plus utiles sont référencées dans l'appendix 12 (programmer's reference):
    http://xmlrad.com/Manual/Appendix12/index.htm
    RDM
    Tout Est Relatif
    Rubrique XMLRAD: http://xmlrad.developpez.com
    FAQ XMLRAD: http://xmlrad.developpez.com/faq/

  8. #8
    Membre du Club
    Inscrit en
    Novembre 2002
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 92
    Points : 55
    Points
    55
    Par défaut
    Maintenant je n'arrive plus à accéder à ma query,
    TMonModule(XMLCollection.GetModule('MonModule')).MaRequete est à une valeur correte mais TMonModule(XMLCollection.GetModule('MonModule')).MaRequete.Query donne "Valeur inacessible", je ne peux pas utiliser XMLCollection.GetQuery('MaRequete') car elle n'est définie que sur le module Delphi.

    Je suis dans l'evenement BeforeXMLService de mon XMLService, le but final étant de retourner un fichier par SendResponse.

    Le message d'erreur est "La transaction est active", après je ne plus accéder à tous les autres XMLService de mon application.

  9. #9
    RDM
    RDM est déconnecté
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Points : 2 927
    Points
    2 927
    Par défaut
    Citation Envoyé par Sylvain Leray
    je ne peux pas utiliser XMLCollection.GetQuery('MaRequete') car elle n'est définie que sur le module Delphi.
    as-tu essayé au moins ?
    RDM
    Tout Est Relatif
    Rubrique XMLRAD: http://xmlrad.developpez.com
    FAQ XMLRAD: http://xmlrad.developpez.com/faq/

  10. #10
    Membre du Club
    Inscrit en
    Novembre 2002
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 92
    Points : 55
    Points
    55
    Par défaut
    Oui et le résultat est nil, je pensais que ca venait du fait que cette Query n'existe que dans le source Delphi.

  11. #11
    RDM
    RDM est déconnecté
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Points : 2 927
    Points
    2 927
    Par défaut
    bon alors essaye plutot
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    XMLCollection.GetComponent('maquery');
    RDM
    Tout Est Relatif
    Rubrique XMLRAD: http://xmlrad.developpez.com
    FAQ XMLRAD: http://xmlrad.developpez.com/faq/

Discussions similaires

  1. [Servlet] Fichiers d'initialisation
    Par david71 dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 03/09/2003, 13h47
  2. Créer et initialiser un composant TStatusBar :help:
    Par James_ dans le forum C++Builder
    Réponses: 10
    Dernier message: 21/08/2003, 08h52
  3. [servlet] initialisation d'objets
    Par tiPouick dans le forum Servlets/JSP
    Réponses: 11
    Dernier message: 05/08/2003, 12h12
  4. initialisation Directinput avec delphi
    Par Madmaxx dans le forum DirectX
    Réponses: 1
    Dernier message: 21/02/2003, 17h37
  5. Script et XMLmodule
    Par Ph. B. dans le forum XMLRAD
    Réponses: 4
    Dernier message: 27/01/2003, 16h10

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