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

Struts 1 Java Discussion :

recupérer de l'objet request


Sujet :

Struts 1 Java

  1. #1
    kum
    kum est déconnecté
    Inactif  
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 27
    Points : 33
    Points
    33
    Par défaut recupérer de l'objet request
    Boujour,

    Je cherche à recupérer l'objet request de mon application sans succés. Alors aidez moiiiiiiii

    Voici la situation :
    Mon struts-config appelle un pluging qui lance une classe "ApplicationPlugIn". Dans cette classe (extends Plugin) je veux inserer un objet dans la request de l'application pour m'en servir plus tard dans toutes les applications.
    Problème je n'arrive pas à trouver la methode pour recuperation la request afin d't inserer mon objet ???

    Merci par avance

  2. #2
    Membre habitué Avatar de bouchette63
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 257
    Points : 187
    Points
    187
    Par défaut
    Bonjour,

    Le request est un objet transmis à toute servlet et toute JSP. Il n'y a donc pas lieu de procéder à quelconque déclaration, le serveur s'en charge.

    Lien javadoc : ICI

    Pour récupérer un objet stocker dans le request, il faut procéder comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Request.getAttribute("objectName");
    Et pour y insérer un objet, on fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Request.setAttribute("objectName",Object);
    "Tout m'afflige, et me nuit, et conspire à me nuire" Racine

  3. #3
    Expert éminent

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Points : 7 778
    Points
    7 778
    Par défaut
    Citation Envoyé par kum
    Boujour,

    Je cherche à recupérer l'objet request de mon application sans succés. Alors aidez moiiiiiiii

    Voici la situation :
    Mon struts-config appelle un pluging qui lance une classe "ApplicationPlugIn". Dans cette classe (extends Plugin) je veux inserer un objet dans la request de l'application pour m'en servir plus tard dans toutes les applications.
    Problème je n'arrive pas à trouver la methode pour recuperation la request afin d't inserer mon objet ???

    Merci par avance
    Pour que l'objet créé dans le plugin soit accessible dans l'application, il ne faut pas le mettre dans le scope request mais dans le scope application comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    servlet.getServletContext().setAttribute("tonObjet",tonObjet) ;
    et pour le récupérer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TonObjet tonObjet= (TonObjet) servlet.getServletContext().getAttribute("tonObjet");
    Modératrice Java - Struts, Servlets/JSP, ...

  4. #4
    kum
    kum est déconnecté
    Inactif  
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 27
    Points : 33
    Points
    33
    Par défaut
    OK cela fonctionne.

    Derniere ptite chose pour recuperer mon fameux objet dans le scope "application" dans une classe toto quel extends dois je lui specifier et comment y acceder ???
    Apres c'est promis, je ne t'embete plus.

  5. #5
    Membre éprouvé
    Avatar de yolepro
    Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2002
    Messages
    918
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Mai 2002
    Messages : 918
    Points : 1 144
    Points
    1 144
    Par défaut
    Aucun extends n'est nécessaire.

    Il faut juste passer le servletContext en paramètre de ta méthode.
    Etre c'est etre relatif.

  6. #6
    Expert éminent

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Points : 7 778
    Points
    7 778
    Par défaut
    Citation Envoyé par kum
    OK cela fonctionne.

    Derniere ptite chose pour recuperer mon fameux objet dans le scope "application" dans une classe toto quel extends dois je lui specifier et comment y acceder ???
    Apres c'est promis, je ne t'embete plus.
    Tu récupères ton objet dans une Action via l'instruction que je t'ai donné précédemment et après, tu peux par exemple passer ton objet en paramètre d'une méthode de ta classe.
    Modératrice Java - Struts, Servlets/JSP, ...

  7. #7
    kum
    kum est déconnecté
    Inactif  
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 27
    Points : 33
    Points
    33
    Par défaut
    OK, mais là, le probleme c'est que j'appelle une fonction sans parametre.

    Je explique :
    Toutes nos applications s'appuie sur une framework metier.
    Nos appli (deja developpé) appellent (et ce, à plusieurs reprise) une function d'un objet du framework. Style

    MonObjet.getResultat();

    C'est cette fonction qui doit me retourner mon objet, objet, je te rapelle, placé dans le scope "application".
    Je ne recupere donc pas objet ActionServlet me permettant d'avoir accès à mon objet préalablement mis dans le context "application".

    Donc comment puis-je proceder ?
    Merci

  8. #8
    Expert éminent

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Points : 7 778
    Points
    7 778
    Par défaut
    Désolée mais je ne suis pas certaine d'avoir tout compris.

    Dans l'exemple que tu donnes, soit MonObjet.getResultat(), MonObjet correspond à l'objet placé dans le scope application ?

    Et l'appel de cette méthode getResultat() est effectué dans une Action ou dans une classe ?
    Modératrice Java - Struts, Servlets/JSP, ...

  9. #9
    kum
    kum est déconnecté
    Inactif  
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 27
    Points : 33
    Points
    33
    Par défaut
    Effectivement mon texte est pour le moins ambigu...

    Bon, j'essaye d'être plus explicite :

    Lors de l'initialisation d'une session client (ouverture d'une application web), j'insère un objet Connection dans ma session (et non plus dans application).

    Maintenant à chaque connexion sur base de données, je veux récupérer mon un objet Connection précédemment m'y en session.
    Tu me diras : simple un
    Connection conn = (Connection) request.getSession.getAttribute("conn");
    Statement stmt = conn.createStatement();
    ...
    =====> conn étant le nom de mon objet Connection mis en session.

    Sauf qu'il y a un existant...

    Toutes les applications passent par une classe (du framwork métier) pour créer et retourner une nouvelle Connexion ce qui nous crée des spools de connexion incroyable et fait tomber notre serveur tomcat.

    Donc dans chaque application l'appelle à une connexion se fait comme suit :
    Connection = EntrepriseDatasourceManager.getConnection();
    Statement stmt = conn.createStatement();
    ...

    Moi, je voudrais me servir de cette fonction getConnection() de la classe EntrepriseDatasourceManager pour aller chercher mon objet Connection déposé en session et le retourner.

    Et c'est la ou le problème se situe. Je n'ai accès a aucun ServletContext, Request .... dans cette classe EntrepriseDatasourceManager

    Donc je me sens légèrement bloqué, tu comprends

Discussions similaires

  1. Web Service : récupération objet request
    Par silver95 dans le forum Services Web
    Réponses: 1
    Dernier message: 26/08/2007, 19h29
  2. objets REQUEST et RESPONSE
    Par NikoBe dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 17/01/2007, 00h43
  3. Objet request ne voit pas utf8
    Par cels dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 11/01/2007, 12h07
  4. Réponses: 4
    Dernier message: 14/09/2005, 21h39
  5. [servlet][bean]comment récupérer l'objet request
    Par otminou dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 27/09/2004, 14h40

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