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 :

Récupérer une date dans jsp


Sujet :

Servlets/JSP Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Etudiant
    Inscrit en
    Février 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Février 2013
    Messages : 23
    Points : 20
    Points
    20
    Par défaut Récupérer une date dans jsp
    Bonjour à tous,

    J’aimerais récupérer une date saisie dans ma jsp car quand j'ajoute les données dans ma base de données je récupère un "NULL" pouvez-vous m'aider s'il vous plaît ? Je précise que j'utilise hibernate dans mon projet !

    Voici un bout de mon code :

    - le champ concerné dans ma jsp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     <label for="disponibilite">Disponibilité <span class="requis"></span></label>
                    <input type="date" name="disponibilite" value=""  />
                      <br />
    - ma Servlet
    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
    42
    43
    44
    45
    46
    47
    48
    49
     
    @WebServlet("/InscriptionOuvrier")
    public class ControleurInscriptionOuvrier extends HttpServlet {
     
    	private IOuvrierInscription ouvrier;
     
    	@Override
    	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
    			throws ServletException, IOException {
    		req.getParameter("formulaire_inscription_ouvrier.jsp");
    	}
     
    	@Override
    	protected void doPost(HttpServletRequest req, HttpServletResponse resp)
    			throws ServletException, IOException {
    		String action = req.getParameter("action");
    		if (action.equals("Valider")){
    			String nom = req.getParameter("nom");
    			String prenom = req.getParameter("prenom");
    			String login = req.getParameter("login");
    			String password = req.getParameter("password");
     
    			DateFormat df=new SimpleDateFormat("dd-MMM-yy");
    			String disponibilite = req.getParameter("disponibilite");
    			Date startDate=null;
    			try {
    				startDate = df.parse(disponibilite);
    			} catch (ParseException e) {
    				// TODO Auto-generated catch block
    				e.printStackTrace();
    			}
     
    			String prestation = req.getParameter("prestation");
    			double prix = Double.parseDouble(req.getParameter("prix"));
     
    			ouvrier.addOuvrier(new OuvrierInscriptionEntity(nom, prenom, login, password, startDate, prestation, prix));
     
    		}
    		doGet(req, resp);
    	}
     
    	@Override
    	public void init() throws ServletException {
    		ouvrier = new OuvrierInscriptionImpl();
    	}
     
     
     
    }

  2. #2
    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
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    C'est très certainement lié au fait que le format de date n'est pas le bon...
    En faisant des tests sur différents navigateurs, les résultats sont :
    - Firefox => la date est envoyée dans le format saisi
    - IE11 => idem
    - Chromium => la date est envoyée au format ISO yyyy-MM-dd
    - Opera => => idem

    Bref, le type "date" n'a pas l'air d'être correctement géré par les navigateurs...

  3. #3
    Expert éminent sénior
    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 : 45
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    la spec html5 dit que les input date sont envoyés au format "yyyy-mm-dd" ( section 5.6 RFC3339 ), or ce n'est pas comme ça que tu parse dans ton code (dd-MMM-yy) => erreur inévitable.

  4. #4
    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
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    la spec html5 dit que les input date sont envoyés au format "yyyy-mm-dd" ( section 5.6 RFC3339 )
    les navigateurs l'ignorent majoritairement et c'est bien dommage, du coup, ce n'est pas utilisable

  5. #5
    Membre à l'essai
    Homme Profil pro
    Etudiant
    Inscrit en
    Février 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Février 2013
    Messages : 23
    Points : 20
    Points
    20
    Par défaut
    C'est bon ça marche, en effet mon format de date était incorrect j'ai donc fait un "parse" en yyyy-MM-dd. J'ai un autre souci, apparemment le type="date" n'est pas géré sur internet explorer et Firefox mais que sur chrome (je possède que ces trois navigateurs). Je veux savoir juste par curiosité comment afficher un calendrier pour choisir une date sur internet explorer et Firefox ?

  6. #6
    Expert éminent sénior
    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 : 45
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    Citation Envoyé par OButterlin Voir le message
    les navigateurs l'ignorent majoritairement et c'est bien dommage, du coup, ce n'est pas utilisable
    Ceux qui respectent le html5 enverront dans le bon format. Ceux qui ne respectent pas ce type, l'afficheront comme un input text. Suffit de demander à l'utilisateur de tapper la date au format yyyy-mm-dd et ça passe pour ces cas là aussi. Maitenant, on trouve aussi des librairies javascripts qui font le bridging quand le browser ne supporte pas Et c'est vrai que les calendriers sont un peu le parent pauvre du support html5

  7. #7
    Membre à l'essai
    Homme Profil pro
    Etudiant
    Inscrit en
    Février 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Février 2013
    Messages : 23
    Points : 20
    Points
    20
    Par défaut
    Ok c'est dommage que certains navigateurs ne respectent pas entièrement le HTML5. En tout cas encore une fois merci de votre aide

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

Discussions similaires

  1. récupérer une date dans excel en double
    Par pbatty1 dans le forum C#
    Réponses: 0
    Dernier message: 17/02/2011, 16h51
  2. Récupérer une date dans une chaine
    Par GSASA dans le forum Langage
    Réponses: 2
    Dernier message: 08/03/2010, 07h14
  3. récupérer une date dans une chaîne
    Par mymeal dans le forum MFC
    Réponses: 16
    Dernier message: 29/10/2008, 20h37
  4. Récupérer une date dans une CString
    Par cjacquel dans le forum MFC
    Réponses: 1
    Dernier message: 05/09/2007, 17h07
  5. Réponses: 5
    Dernier message: 01/06/2006, 11h36

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