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 :

peupler une date d'un FormAction a un formulaire hml


Sujet :

Struts 1 Java

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2009
    Messages
    139
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 139
    Points : 43
    Points
    43
    Par défaut peupler une date d'un FormAction a un formulaire hml
    Bonjour,
    j'ai un formulaire html avec un champ correspondant à une propriété de type Date dans une ActionForm,
    ceci me genere une exception de type
    javax.servlet.ServletException: BeanUtils.populate
    d'apres certains forum, on ne peut pas accorder une champ html et alors une chaine de caracteres a une propriété de type Date;

    veuillez bien me fournir d'une solution

    merci d avance

  2. #2
    Membre du Club
    Inscrit en
    Janvier 2009
    Messages
    139
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 139
    Points : 43
    Points
    43
    Par défaut
    j'ai déja trouvé une solution sur l url suivant

    http://java.developpez.com/faq/strut...=trucs_astuces
    dans la rubrique: Comment automatiser la population des chaînes contenant des dates ?

    sauf que cette solution ne donne pas la classe WrapperUtil

  3. #3
    Nouveau membre du Club
    Inscrit en
    Décembre 2008
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 43
    Points : 37
    Points
    37
    Par défaut
    ça dépends du type de Date utilisée !!!!
    Type Date dans java corresponds à deux classe diffèrents .
    il vaut mieux préciser :
    Est c'est possible que tu nous ecris l'instruction de définition du variable java ???

  4. #4
    Membre du Club
    Inscrit en
    Janvier 2009
    Messages
    139
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 139
    Points : 43
    Points
    43
    Par défaut
    Bonjour,
    Tout d'abord, merci bien pour votre coopération

    la date est déclaré dans mon ClientForm comme:
    private java.util.Date dateDeNaissance
    dans mon formulaire html elle est déclaré comme:
    <input type="text" name=dateDeNaissance>
    dans ma classe de mapping elle est décléré comme
    private java.util.Date dateDeNaissance
    dans mon fichier mapping il est decléré comme:
    <property name="dateDeNaissance" column="date_de_naissance" type="date" />
    telle que la column date_de_naissance est de type:
    Date
    (sous mysql)

  5. #5
    Membre du Club
    Inscrit en
    Janvier 2009
    Messages
    139
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 139
    Points : 43
    Points
    43
    Par défaut
    Il parait que personne n'est interessé a mon sujet, bon j'ai trouvé une petite solution, j ajoute ce bout de code a mon CLientForm
    private DateFormat dateFormatter = new SimpleDateFormat("yyyy-MM-dd");
    //private DateFormat dateFormatter = SimpleDateFormat.getDateInstance(DateFormat.FULL, Locale.FRANCE);

    public String getDateDisplay() {
    if(dateDeNaissance==null){
    return "";
    }else
    return dateFormatter.format(dateDeNaissance);
    }

    public void setDateDisplay(String dateDisplay) {
    if(dateDisplay==null){
    dateDeNaissance = null;
    }
    else{
    try {
    dateDeNaissance = dateFormatter.parse(dateDisplay);
    } catch (ParseException e) {
    // TODO: handle exception
    dateDeNaissance = null;
    }
    }
    }
    et je donne a mon champ html concerné le nom: dateDisplay

    ca semble marcher sauf que j obtiens une valeur nulle dans ma base de donnés dans la column date

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2005
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2005
    Messages : 8
    Points : 9
    Points
    9
    Par défaut
    bizard...
    mais si je peux me permettre ce n'est pas a ta form de gerer l'intelligence de la transformation de date...

    il serait surement plus propre de faire la conversion sur le getDateDeNaissance, qui lui transformerais la dateDisplay, et dans ce cas les donnees de ton formulaires ne sont pas modifiees. c'est juste plus propre ca ne change rien a la demarche qui elle est la bonne. recuperer une string et la transformer pour la passer au service.

    si pour la valeur null insere est tu sur de bien passer la bonne valeur de date a ton service qui fait la sauvegarde?

  7. #7
    Nouveau membre du Club
    Inscrit en
    Décembre 2008
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 43
    Points : 37
    Points
    37
    Par défaut
    Citation Envoyé par ElBisounours Voir le message
    si pour la valeur null insere est tu sur de bien passer la bonne valeur de date a ton service qui fait la sauvegarde?
    TT a fait vrai , tu dois verifier la valeur de date.
    Et fait attention , pour les formats de la date , mais dans ce cas tu aura une valeur incorrecte dans votre SGBD et non pas nul!!!!

Discussions similaires

  1. [Crystal] transformation d'une date en numéro de semaine
    Par barna dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 24/03/2017, 10h41
  2. Récupérer l'année d'une date
    Par delphim dans le forum Langage SQL
    Réponses: 3
    Dernier message: 15/01/2003, 17h33
  3. tester si une date est valide
    Par Andry dans le forum Langage
    Réponses: 5
    Dernier message: 17/09/2002, 12h54
  4. Generation d'evenements a une date precise
    Par pascalzzz dans le forum MFC
    Réponses: 2
    Dernier message: 04/06/2002, 16h21
  5. Réponses: 3
    Dernier message: 19/04/2002, 01h11

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