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

JSF Java Discussion :

Passage de date en paramètre avec JSF


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2011
    Messages : 40
    Par défaut Passage de date en paramètre avec JSF
    bonjour tout le monde, j'ai un souci pour passer des parametres date .J'utlise les codes suivant:
    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
    public List <Object[]>getMontantParVehicule(Date d1,Date d2) {
     
    		Session session=HibernateUtil.getSessionFactory().openSession();
    		try{
    		session.beginTransaction();
    		System.out.println("Stat HQL");
    		SQLQuery q=session.createSQLQuery("select IMMAT,SUM(PRIX) as COUT,SUM(QUANTITE) as QUANTITE,COUNT(IMMAT) as nbre from BON_ESSENCE where DATE_BON between :debut and :fin  GROUP BY IMMAT ");
          //  Query q =session.createQuery("select immat,sum(prix) as mnt from BonEssence group by immat  ");
            q.setParameter("debut",d1  );
            q.setParameter("fin",d2  );
    return q.list();
    		}catch (RuntimeException e) {
    		    session.getTransaction().rollback();
    		    throw e;
    		}finally{
     
    			session.getTransaction().commit();
    		}
     
     
        }
    le bean
    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
    private Date d1;
        private Date d2;
    	public Date getD1() {
    		return d1;
    	}
    	public void setD1(Date d1) {
    		this.d1 = d1;
    	}
    	public Date getD2() {
    		return d2;
    	}
    	public void setD2(Date d2) {
    		this.d2 = d2;
    	}
    public List<Object[]> getMontantParVehiculeTotal(){
    		return essenceService.getMontantParVehicule(d1, d2);
    		}
    l'objectif est de saisir les paramètres dans une page et d'affichez le deuxième page qui prend en compte les paramètres saisis.
    me pages xhtml sont:
    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:ui="http://java.sun.com/jsf/facelets"
           xmlns:p="http://primefaces.org/ui">
     
            <h:head>
                <f:facet name="first">
                    <meta http-equiv="X-UA-Compatible" content="EmulateIE8" />
                    <meta content='text/html; charset=UTF-8' http-equiv="Content-Type"/>
                    <title>Welcome</title>
                </f:facet>
     
                <link type="text/css" rel="stylesheet" href="#{request.contextPath}/css/default.css" />
                <link type="text/css" rel="stylesheet" href="#{request.contextPath}/css/syntaxhighlighter/syntaxhighlighter.css" />
     
                <style type="text/css">
                    .ui-layout-north {
                        z-index:10 !important;
                        overflow:visible !important;;
                    }
     
                    .ui-layout-north .ui-layout-unit-content {
                        overflow:visible !important;
                    }
                </style>
            </h:head>
     
    	<h:panelGrid columns="2" id="grid2">
     
                        <h:outputLabel value=" debut: *" for="txt_d1" />
                         <p:calendar locale="fr" value="#{bonEssenceBean.d1}" id="txt_d1" datePattern="dd/yyyy/MM" required="true" ></p:calendar>
     
                        <h:outputLabel value=" Fin: *" for="txt_d2" />
                         <p:calendar locale="fr" value="#{bonEssenceBean.d2}" id="txt_d2" datePattern="dd/yyyy/MM" required="true" ></p:calendar>
     
     
                     <p:button id="btn_add" value="Enregistrer"
                        outcome="DetailBon" >
                        <f:param name="d1" value="#{bonEssenceBean.d1}"></f:param>
                        <f:param name="d2" value="#{bonEssenceBean.d2}"></f:param>
                        </p:button>
     
                </h:panelGrid>
    </html>
    et DetailBon.xhtml
    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
    50
    51
    52
    53
    54
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:ui="http://java.sun.com/jsf/facelets"
          xmlns:p="http://primefaces.org/ui">
     
    	<ui:composition template="/Views/Template/common.xhtml">
    	  <ui:define name="Edition">
    	  <h:form id="form">
     
        </h:form>
     
    	  </ui:define>
     
    	  <ui:define name="Consultation">
    	  <h:form id="form2">
    	  <!-- //////////////////////////////////////////////////////////////////////////// -->
     
    	  <p:dataTable id="statTable" var="item" value="#{bonEssenceBean.montantParVehiculeTotal}"  widgetVar="statTable" sortMode="single" rows="5" paginator="true" paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}" rowsPerPageTemplate="5,15,25">    
          <f:facet name="header">
                  <p:outputPanel>  
                       <h:outputText value="Search:" style="Height:30px"/>  
                       <p:inputText id="globalFilter" onkeyup="carsTable.filter()" style="width:150px" />  
                  </p:outputPanel>  
     
               </f:facet>
                <p:column  headerText="Vehicule"   > 
     
                    <h:outputText value="#{item[0]}" />
     
                </p:column>  
     
                <p:column  headerText="COUT">  
                    <h:outputText value="#{item[1]}" />  
                </p:column>  
                <p:column  headerText="QUANTITE">  
                    <h:outputText value="#{item[2]}" />  
                </p:column> 
                 <p:column  headerText="Nombre de bon">  
                    <h:outputText value="#{item[3]}" />  
     
                </p:column>
     
     
     
            </p:dataTable>
     
     
     
    	</h:form>
    	  </ui:define>
    	</ui:composition>
    </html>
    mais d1 et d2 ne sont pas instanciés et restent null alors j'ai l'exception:transaction sot succefully started
    La technique utilisée ou du moins celle que j'essaie est dans le manuel Primeface mais peut etre que je rate un truc

  2. #2
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2011
    Messages : 40
    Par défaut
    quelqu'un connait-il une alternative pour passer des date en paramètre au bean?

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Février 2009
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2009
    Messages : 37
    Par défaut
    Je ne pense pas que ce soie possible, cependant il suffit des parser la chaine au format dd/yyyy/MM que vous recevez.

    Voir SimpleDateFormat

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2011
    Messages : 40
    Par défaut
    Citation Envoyé par ellix86 Voir le message
    Je ne pense pas que ce soie possible, cependant il suffit des parser la chaine au format dd/yyyy/MM que vous recevez.

    Voir SimpleDateFormat
    Parser, est qu'il faut alors que je change les types de Date à String?

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Février 2009
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2009
    Messages : 37
    Par défaut
    C'est l'inverse, le formulaire envoie une date au format String (dd/yyyy/MM ou 13/2013/08 pour la date d'aujourd'hui) et il faut la mettre en Date.

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2011
    Messages : 40
    Par défaut
    Citation Envoyé par ellix86 Voir le message
    C'est l'inverse, le formulaire envoie une date au format String (dd/yyyy/MM ou 13/2013/08 pour la date d'aujourd'hui) et il faut la mettre en Date.
    merci mais je crois qu'il y a un probleme avant meme le de Parser. j'ai effectué un test et je constate que les données en parametre de la page 1 ne sont pas reçues,dans le bean puisque je ne peut les afficher dans la page 2.
    d'abord faut que je puisse passer des parametre aux bean.

Discussions similaires

  1. [Calendrier] Dynamique avec passage de date en paramètre
    Par hannibal974 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 10
    Dernier message: 22/05/2014, 02h26
  2. Requête avec date en paramètre
    Par peach dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 25/01/2007, 14h35
  3. Réponses: 2
    Dernier message: 16/08/2005, 15h33
  4. Réponses: 6
    Dernier message: 26/07/2005, 10h20
  5. Date nulle dans une requete paramétrée avec TParameter
    Par denrette dans le forum Bases de données
    Réponses: 3
    Dernier message: 16/06/2004, 08h37

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