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ération de parametres a partir d'une page JSP


Sujet :

Struts 1 Java

  1. #1
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 73
    Par défaut recupération de parametres a partir d'une page JSP
    Bonjour
    alors je débute dans les struts/hibernate et je voudrais savoir si j'ai bien récupérer mon de texte dans ma page JSP por le transferer a ma classe action qui en fonction de ce champ (si il est rempli elle m'envoi vers une page et si il est vide vers une autre) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <form action="lala.do" method="POST">
     
            <input type="file" name="oo" value="" width="2" />
            <input type="submit" value="Ajouter" />
            <%String nom = request.getAttribute("oo").toString();%>
    </form>
    et dans la classe Action :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
      if(request.getAttribute("oo")==null)
                    return mapping.findForward("non");
     
            return mapping.findForward("oui");
    mais le tomcat il me sort : erreur http 500 :Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.
    comment doit je faire pour que l'Action prenne en considération le champ
    et me redirige les pages
    Merci

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par walido Voir le message
    mais le tomcat il me sort : erreur http 500 :Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête
    Et quelle est cette erreur en question? Ca aiderais peut être à résoudre ton problème? (voir dans les logs du serveur si elle apparaît pas dans la page web)

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 73
    Par défaut
    désolé g pas pu comprendre grand chose a part :
    5 mars 2008 22:07:18 org.apache.catalina.core.ApplicationContext log
    GRAVE: org.apache.jasper.JasperException: java.lang.NullPointerException
    javax.faces.FacesException: org.apache.jasper.JasperException: java.lang.NullPointerException
    g enlevé le fichier jsf.xml et tout ce qui est en relation avec jsf mais toujours la meme chose
    mais ce que je voulais savoir surtout c est ce que ma methode pour récupérer
    mon parametre de ma page jsp e d'aprés vous est qu'il y a une methode meilleure pour le faire?

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Stack trace de l'erreur s'il te plait.

    JSF ne devrais pas être impliqué par ton action struts, retire les librairies jsf de ta webapp pour être sur que jsf soit désactivé, et vire les mapping servlet de jsf

  5. #5
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 73
    Par défaut
    Stacktrace:
    at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:413)
    at com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:439)
    at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:114)
    at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.renderView(ViewHandlerImpl.java:320)
    at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
    at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
    at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
    at com.sun.faces.extensions.avatar.lifecycle.PartialTraversalLifecycle.render(PartialTraversalLifecycle.java:106)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at com.sun.webui.jsf.util.UploadFilter.doFilter(UploadFilter.java:267)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: org.apache.jasper.JasperException: An exception occurred processing JSP page /templ_Admin.jsp at line 25
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    22:     <form action="lala.do" method="POST">
    23: 
    24:         <input type="file" name="oo" value="" width="2" />
    25:          <%String nom = request.getAttribute("oo").toString();%>
    26:         <input type="submit" value="Ajouter" />
    27:         
    28: </form>
    voila la stack trace complete et comme je t'ai dis g enlevé déja tout ce qui en relation avec jsf les lib et le jsf.xml mais en vain n'empeche qu'avec getParameter ca marche mais seulement l'ordre do cad le champ n'est pas transferé au action donc le action affiche tj la meme page

  6. #6
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Si l'attribut "oo" n'existe pas dans request, getAttribute("oo") renvoie null et tu te prends une NullPointerException sur l'usage de toString()

    Dans le principe, il faudrait faire quelque chose comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <%
    MonObjet oo = null;
    String nom = "";
    oo = (MonObjet)request.getAttribute("oo");
    if ( oo != null ) nom = oo.toString();
    %>
    Si oo est un String, tu peux simplifier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    String nom = (String)request.getAttribute("oo");
    if ( nom == null ) nom = "";    // Par exemple
    a+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par walido Voir le message
    voila la stack trace complete et comme je t'ai dis g enlevé déja tout ce qui en relation avec jsf les lib et le jsf.xml mais en vain n'empeche qu'avec getParameter ca marche mais seulement l'ordre do cad le champ n'est pas transferé au action donc le action affiche tj la meme page
    Ton stacktrace dis le contraire. Tu va donc me dire, au cas ou la suggestion de
    OButterlin serait incorrect (je suis pourtant d'accord avec lui)
    1) si l'erreur c'est lors d'un submit de ton formulaire? ou lorsque tu tente juste de l'afficher;
    2) Quelle url tu utilise;
    3) si tu est dans un environnement j2EE 5 ou inférieur (version et nom de ton conteneur webapp)
    4) Le stacktrace complet (incluant les caused by)

  8. #8
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Le stack précise bien
    Caused by: org.apache.jasper.JasperException: An exception occurred processing JSP page /templ_Admin.jsp at line 25
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  9. #9
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 73
    Par défaut
    C bon ca marche!
    je crois que l'erreur venait du fait que je mettais getAttribute().toString()
    dans le JSP
    quand j'ai caster la sortie : (String) request.getAttribute("oo"); et du coté du action g comparé request.getAttribute("oo") non pas avec == mais avec compareTo() le action a bien pris en considération la valeur du champ et m'a redirectioné en fonction vers la page configuré dans le struts-config.xml
    bref tout est bien qui finit bien maintenant c un autre défi qui se reléve pour moi c cette histoire de persistence avec hibernate mais ca c une autre histoire

    merci OButterlin et tchize pour votre aide précieuse

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. appeler une action a partir d'une page jsp
    Par air75 dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 17/07/2008, 16h03
  2. Invoquere un web service à partir d'une page JSP
    Par madjidri dans le forum Services Web
    Réponses: 4
    Dernier message: 02/07/2008, 10h17
  3. Impression à partir d'une page jsp
    Par j2eejsp dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 30/06/2008, 14h58
  4. Génération PDF à partir d'une page JSP
    Par fatenatwork dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 04/12/2007, 21h15
  5. Acces à l'arborescence d'un disque à partir d'une page jsp
    Par fabricew59 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 29/09/2006, 16h53

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