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

Servlets/JSP Java Discussion :

[Servlet] Fichiers d'initialisation


Sujet :

Servlets/JSP Java

  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    560
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 560
    Par d�faut [Servlet] Fichiers d'initialisation
    Salut,

    Je voudrais savoir s'il �tait possible de passer des arguments � une servlet avant qu'elle soit charg�e ? On m'a dit que c'�tait possible, mais je n'ai pas trouv� comment faire.

    Actuellement, la servlet appelle une classe qui lit dans un fichier et qui r�cup�re toutes les lignes de ce fichier et les repasse � la servlet.

    Si vous avez des id�es.

    Merci d'avance.

  2. #2
    Membre �prouv�

    Profil pro
    Inscrit en
    F�vrier 2003
    Messages
    119
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : F�vrier 2003
    Messages : 119
    Par d�faut
    Oui, c'est possible

    dans ton fichier web.xml

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <servlet>
       ...
     
       <init-param> 
          <param-name>param</param-name>
          <param-value>ValeurParam</param-value>
       </init-param>
    </servlet>

    Tu peux ensuite acc�der a tes param�tres gr�ce a la m�thode javax.servlet.ServletContext.getInitParameter().


    PS: Je crois que tu t'es gourr� de forums (vois du cot� J2EE)

  3. #3
    Membre �clair�
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    560
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 560
    Par d�faut
    OK, merci �a marche.

    Mais en fait j'ai un petit probl�me : j'ai d�clar� dans le fichier web.xml les diff�rents param�tres s'initialisation et ma servlette se pr�sente ainsi :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    class PremiereServlet extends HttpServlet
    {
        public void doPost(HttpRequestServlet req, HttpResponseServlet, ServletContext servletContext) {
     
    .....monparam1 = servletContext.getInitParameter("param1");
    .....
     
       }
    }
    Mais en fait, cette permi�re servlette appelle via un formulaire une autre servlette et l� j'ai un probl�me pour passer le servletContext. Faut-il le passer en argument ? Car dans ma deuxi�me servlette, �a plante si je le mets dans les arguments de la m�thode :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    public void doPost(HttpRequestServlet req, HttpResponseServlet, ServletContext servletContext)
    Merci d'avance pour toute r�ponse.
    A+

  4. #4
    Membre �clair�
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    560
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 560
    Par d�faut
    D�sol� pour la faute de frappe, mais c'est "HttpServletRequest" et "HttpServletResponse".

  5. #5
    Membre �clair�
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    560
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 560
    Par d�faut
    Bon, en fait je pensais que �a passait, mais en fait non depuis que j'ai d�clar� le ServletContext, �a ne va plus, j'obtiens l'erreur 400 suivant :

    "La m�thode HTTP POST n'est pas support�e par cette URL
    La requ�te envoy�e par le client �tait syntaxiquement incorrecte (La m�thode HTTP POST n'est pas support�e par cette URL)."

    En fait dans ma servlet, je passe le ServletContext de la fa�on suivante:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    public void doPost(HttpServletRequest request, HttpServletResponse response, ServletContext servletContext) throws IOException, ServletException
    {.....
    firstServer = servletContext.getInitParameter("firstServ");
    ......}
    Mais je ne sais pas pourquoi �a ne marche plus, peut �tre que �a n'a jamais march�.
    Merci pour toute r�ponse.

    A+

  6. #6
    Membre �prouv�

    Profil pro
    Inscrit en
    F�vrier 2003
    Messages
    119
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : F�vrier 2003
    Messages : 119
    Par d�faut
    Mais tu peux pas faire ce que tu fais !!!!!!!!!!!

    La d�claration de la m�thode doGet doit rester comme ceci :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    protected void doPost(HttpServletRequest req,
                           HttpServletResponse resp) throws ServletException, IOException
    Essaye avec :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    getServletContext().getInitParameter("firstServ")

  7. #7
    Membre �clair�
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    560
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 560
    Par d�faut
    Justement, j'ai d�j� essay� et �a ferme brutalement Tomcat.

    J'ignore pourquoi, mais j'ai eu le m�me probl�me avec la lecture de fichiers depuis une servlet. A l'�poque les fichiers devaient �tre plac�s � l'endroit suivant sur Tomcat :

    webapps\examples\mon_fichier.txt

    On y acc�dait de la fa�on suivante :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    String pathFile = getServletConfig().getServletContext().getRealPath("/")+fileName;
    Et de cette mani�re, �a fonctionnait.

    Par contre, maintenant, si je saisis cette ligne :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    String firstServer = getServletContext().getInitParameter("firstServ");
    Le fichier web.xml o� est d�clar� le param�tre "firstServ" se trouve � l'adresse suivante :
    webapps\examples\WEB-INF\

    Bon, si quelqu'un a une id�e....Merci d'avance.

  8. #8
    Membre �clair�
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    560
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 560
    Par d�faut
    Bon �a y est, j'ai trouv�.

    Dans ma servlette, j'ai d�clar� une m�thode "init" :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
     
    public void init()
    {
    ......
       String firstServer = this.getInitParameter("firstServ");
    ......
    }
    En compl�tant le fichier web.xml, on obtient ce qu'il faut.
    Voil�, a+.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Fichier d'initialisation CSSD (ASM) sous Window
    Par agdid04 dans le forum Administration
    R�ponses: 0
    Dernier message: 25/11/2009, 17h16
  2. R�ponses: 2
    Dernier message: 08/06/2008, 11h33
  3. Modifier param�tre OPEN_CURSORS du fichier d'initialisation
    Par motorenshi dans le forum Administration
    R�ponses: 4
    Dernier message: 21/11/2007, 17h22
  4. [Servlet] Fichier xls prot�g� apres envoi au client
    Par romdelf dans le forum Servlets/JSP
    R�ponses: 6
    Dernier message: 03/10/2005, 16h41
  5. cr�er un fichier d'initialisation de la base de donn�es
    Par jan0 dans le forum D�cisions SGBD
    R�ponses: 2
    Dernier message: 07/09/2005, 08h45

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