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 :

[date] découpez une date


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Avatar de CPI_en_mousse
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2006
    Messages
    332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 332
    Par défaut [date] découpez une date
    Bonjour.

    le code suivant de ma JSP ne fonctionne pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    <%@ page import="java.text.SimpleDateFormat" %>
     
    <% SimpleDateFormat dateFormatter = new SimpleDateFormat("dd"); %>
     
     <logic:notEmpty name="applicant" property="birthday" scope="session">
                                <html:text property="day" value="<%= dateFormatter.format(applicant.birthday); %>" title="day" maxlength="2" size="2" tabindex="20" />
                            </logic:notEmpty>
    J'ai les erreurs suivantes :
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP
    
    Une erreur s'est produite à la ligne: 202 dans le fichier jsp: /applicant/displayApplicant.jsp
    Erreur de servlet générée:
    /home/florian/.netbeans/5.5/apache-tomcat-5.5.17_base/work/Catalina/localhost/QATS/org/apache/jsp/applicant/displayApplicant_jsp.java:419: ')' expected
                  _jspx_th_html_text_3.setValue( dateFormatter.format(applicant.birthday); );
                                                                                         ^
    
    
    Une erreur s'est produite à la ligne: 202 dans le fichier jsp: /applicant/displayApplicant.jsp
    Erreur de servlet générée:
    /home/florian/.netbeans/5.5/apache-tomcat-5.5.17_base/work/Catalina/localhost/QATS/org/apache/jsp/applicant/displayApplicant_jsp.java:419: illegal start of expression
                  _jspx_th_html_text_3.setValue( dateFormatter.format(applicant.birthday); );
                                                                                           ^
    2 errors
    
    
    
        org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
        org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:328)
        org.apache.jasper.compiler.AntCompiler.generateClass(AntCompiler.java:249)
        org.apache.jasper.compiler.Compiler.compile(Compiler.java:297)
        org.apache.jasper.compiler.Compiler.compile(Compiler.java:276)
        org.apache.jasper.compiler.Compiler.compile(Compiler.java:264)
        org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:563)
        org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:303)
        org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
        org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
        org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
        org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:263)
        org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
        org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:318)
        org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
        org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
        org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
    note
    une petite idée??
    merci

  2. #2
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Bonjour.
    Faut peut être commencer par enlever le ";" de <%= dateFormatter.format(applicant.birthday); %>

  3. #3
    Membre émérite
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2003
    Messages
    782
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2003
    Messages : 782
    Par défaut
    Bonjour,

    dans le message il y
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
                  _jspx_th_html_text_3.setValue( dateFormatter.format(applicant.birthday); );
                                                                                         ^
    dans la jsp il y a
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    value="<%= dateFormatter.format(applicant.birthday); %>"
    donc l'erreur est qu'il ne faut pas de ; à la fin d'un scriplet <%=

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    value="<%= dateFormatter.format(applicant.birthday)%>"

  4. #4
    Membre éclairé
    Avatar de CPI_en_mousse
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2006
    Messages
    332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 332
    Par défaut
    en effet c'est mieux, suis trop aveugle

    sinon il me reste encore ca :
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP
     
    Une erreur s'est produite à la ligne: 202 dans le fichier jsp: /applicant/displayApplicant.jsp
    Erreur de servlet générée:
    /home/florian/.netbeans/5.5/apache-tomcat-5.5.17_base/work/Catalina/localhost/QATS/org/apache/jsp/applicant/displayApplicant_jsp.java:419: cannot find symbol
    symbol  : variable applicant
    location: class org.apache.jsp.applicant.displayApplicant_jsp
                  _jspx_th_html_text_3.setValue( dateFormatter.format(applicant.birthday) );
                                                                      ^
    1 error
     
     
     
        org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
        org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:328)
        org.apache.jasper.compiler.AntCompiler.generateClass(AntCompiler.java:249)
        org.apache.jasper.compiler.Compiler.compile(Compiler.java:297)
        org.apache.jasper.compiler.Compiler.compile(Compiler.java:276)
        org.apache.jasper.compiler.Compiler.compile(Compiler.java:264)
        org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:563)
        org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:303)
        org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
        org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
        org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
        org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:263)
        org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
        org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:318)
        org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
        org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
        org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
    je rappel que applicant.birthday est de type date

  5. #5
    Membre émérite
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2003
    Messages
    782
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2003
    Messages : 782
    Par défaut
    essaie avec jstl:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>
    <%@ page import="java.text.SimpleDateFormat" %>
     
    <% SimpleDateFormat dateFormatter = new SimpleDateFormat("dd"); %>
     
     <logic:notEmpty name="applicant" property="birthday" scope="session">
                                <html:text property="day" value='<fmt:formatDate value="${applicant}" pattern="dd"/>' title="day" maxlength="2" size="2" tabindex="20" />
                            </logic:notEmpty>

  6. #6
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Bah, tu es dans une JSP, pas dans une class Java. Va falloir migrer ton traitement vers une classe.

    Une solution serait d'agir au niveau de l'ActionForm :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public String getDay(){
      SimpleDateFormat dateFormatter = new SimpleDateFormat("dd");
      return dateFormatter.format(applicant.birthday);
    }
     
    public void setDay(String day){
      //Je ne sais ce que tu veux faire avec le jour.
      //tu peux le mettre dans un champ String
      //ou encore modifier le chmp day d'une Date ...
    }
    et dans la JSP :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <html:text property="day" title="day" maxlength="2" size="2" tabindex="20" />
    Voilou. J'espère que c'est clair ...

  7. #7
    Membre éclairé
    Avatar de CPI_en_mousse
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2006
    Messages
    332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 332
    Par défaut
    Merci bien, je me suis débrouillé autrement mais ta solution m'as mis sur la bonne voie et ma bien aidé.

    Hasta Luego

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

Discussions similaires

  1. [DeskI XiR2] Comparaison d'une valeur à une date et à une date relative
    Par courti01 dans le forum Débuter
    Réponses: 1
    Dernier message: 07/11/2010, 21h39
  2. Comment récuperer une date depuis une chaine?
    Par shopoto dans le forum ASP
    Réponses: 4
    Dernier message: 12/05/2004, 16h17
  3. [SQL] Conditions sur une date dans une requete
    Par poufouille dans le forum Bases de données
    Réponses: 4
    Dernier message: 17/03/2004, 14h25
  4. insérer une date dans une table mssql
    Par ericmart dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 29/01/2004, 10h37
  5. test la valeur d'une date dans une requete
    Par TuxP dans le forum Requêtes
    Réponses: 2
    Dernier message: 07/01/2004, 14h53

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