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

Seam Java Discussion :

problème "La transaction a échoué."


Sujet :

Seam Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 8
    Par défaut problème "La transaction a échoué."
    Salut à tous, je travaille dans un environnement eclipse + jboss seam. J'essaie de faire la première page de login.
    Voici le code de la page d'authentification :
    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
    package org.sotetel.session;
     
    import javax.persistence.EntityManager;
    import javax.persistence.PersistenceException;
     
    import org.jboss.seam.ScopeType;
    import org.jboss.seam.annotations.In;
    import org.jboss.seam.annotations.Logger;
    import org.jboss.seam.annotations.Name;
    import org.jboss.seam.annotations.Out;
    import org.jboss.seam.log.Log;
    import org.jboss.seam.security.Identity;
    import org.sotetel.entity.Employe;
     
     
    @Name("authenticator")
    public class Authenticator
    {
        @Logger Log log;
        @In  
        private EntityManager entityManager;
     
        @In Identity identity;
     
        @Out(required=false, scope=ScopeType.SESSION)
         Employe emp;
     
    	public boolean authenticate()
        {
            log.info("authenticating #0", identity.getUsername());
            try {
                emp = (Employe) 
                    entityManager.createQuery("select e from Employe e where e.nomEmploye = #{identity.username} and e.prenomEmploye = #{identity.password}")       
                                 .getSingleResult();
            } catch (PersistenceException e) {
                return false;
            } 
     
     
     
            return true;
        }
    }
    une fois la page de login chargée, quand j'entre le "nom" et "prenom" je reçois le message d'erreur " la transaction a échouée".

    voici les erreurs qui apparaissent sur la console :
    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
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    .....
    01:40:48,765 INFO  [Contexts] starting up: org.jboss.seam.security.identity
    01:40:49,234 INFO  [RuleBase] parsing rules: /security.drl
    01:41:02,656 INFO  [Authenticator] authenticating chehata
    01:41:02,937 INFO  [STDOUT] Hibernate: 
        select
            employe0_.MATRICULE_EMPLOYE as MATRICULE1_35_,
            employe0_.DEBUT_RESPONS_EMPLOYE as DEBUT2_35_,
            employe0_.HANDIC1_EMPLOYE as HANDIC3_35_,
            employe0_.DATE_PERMIS_EMPLOYE as DATE4_35_,
            employe0_.AV_ECHELON_PREV_EMPLOYE as AV5_35_,
            employe0_.TYPE_ARRET_AV_EMPLOYE as TYPE6_35_,
            employe0_.NOM_JF__EMPLOYE as NOM7_35_,
            employe0_.NUM_PERMIS_EMPLOYE as NUM8_35_,
            employe0_.VILLE_EMPLOYE as VILLE9_35_,
            employe0_.CIN_EMPLOYE as CIN10_35_,
            employe0_.SORITE_CAVIS_EMPLOYE as SORITE11_35_,
            employe0_.HANDIC2_EMPLOYE as HANDIC12_35_,
            employe0_.MARCHE_EMPLOYE as MARCHE13_35_,
            employe0_.JEUNE_T_EMPLOYE as JEUNE14_35_,
            employe0_.BANQUE_VIR_EMPLOYE as BANQUE15_35_,
            employe0_.DATE_TITUL_EMPLOYE as DATE16_35_,
            employe0_.FONCTION_EMPLOYE as FONCTION17_35_,
            employe0_.DECLAR_EMPLOYE as DECLAR18_35_,
            employe0_.TEMPS_REDUIT_EMPLOYE as TEMPS19_35_,
            employe0_.CODE_POSTAL_EMPLOYE as CODE20_35_,
            employe0_.PRENOM_EMPLOYE as PRENOM21_35_,
            employe0_.SOLDE_CONGE1_EMPLOYE as SOLDE22_35_,
            employe0_.DECLAR_IMP_EMPLOYE as DECLAR23_35_,
            employe0_.NOM_EMPLOYE as NOM24_35_,
            employe0_.NOM_CONJOINT_EMPLOYE as NOM25_35_,
            employe0_.ADRESSE_EMPLOYE as ADRESSE26_35_,
            employe0_.PERIMETRE_COMMUNAL_EMPLOYE as PERIMETRE27_35_,
            employe0_.SITFAM_EMPLOYE as SITFAM28_35_,
            employe0_.SOLDE_CONGE2_EMPLOYE as SOLDE29_35_,
            employe0_.DATENAISS_EMPLOYE as DATENAISS30_35_,
            employe0_.TELEPHONE_MOBILE_EMPLOYE as TELEPHONE31_35_,
            employe0_.ENTREE_CAVIS_EMPLOYE as ENTREE32_35_,
            employe0_.BUREAU_EMPLOYE as BUREAU33_35_,
            employe0_.FIN_RESPONS_EMPLOYE as FIN34_35_,
            employe0_.SPECIALITE_EMPLOYE as SPECIALITE35_35_,
            employe0_.VOITURE_EMPLOYE as VOITURE36_35_,
            employe0_.ACIEN_CAP_DECES_EMPLOYE as ACIEN37_35_,
            employe0_.NUM_ACC_TRAVAIL_EMPLOYE as NUM38_35_,
            employe0_.NUM_SOCIAL_EMPLOYE as NUM39_35_,
            employe0_.DATE_RECRUT_EMPLOYE as DATE40_35_,
            employe0_.SEXE_EMPLOYE as SEXE41_35_,
            employe0_.SOLDE_REPOS_EMPLOYE as SOLDE42_35_,
            employe0_.SUSPENS_EMPLOYE as SUSPENS43_35_,
            employe0_.DATE_EMPLOI_EMPLOYE as DATE44_35_,
            employe0_.FIN_CONTRAT_EMPLOYE as FIN45_35_,
            employe0_.REGIME_SOCIAL_EMPLOYE as REGIME46_35_,
            employe0_.NATIONALITE_EMPLOYE as NATIONA47_35_,
            employe0_.PRENOM_CONJOINT_EMPLOYE as PRENOM48_35_,
            employe0_.OPERATION_EMPLOYE as OPERATION49_35_,
            employe0_.CHAUFFEUR_EMPLOYE as CHAUFFEUR50_35_,
            employe0_.DEBUT_CONTRAT_EMPLOYE as DEBUT51_35_,
            employe0_.CONJ_ACTIF_EMPLOYE as CONJ52_35_,
            employe0_.TELEPHONE_EMPLOYE as TELEPHONE53_35_,
            employe0_.EMP_MUT_EMPLOYE as EMP54_35_,
            employe0_.SOLDE_CONGE0_EMPLOYE as SOLDE55_35_,
            employe0_.DATE_POSITION_EMPLOYE as DATE56_35_,
            employe0_.ECHELON_EMPLOYE as ECHELON57_35_,
            employe0_.CHEF_FAMILLE_EMPLOYE as CHEF58_35_,
            employe0_.LIEU_EMPLOYE as LIEU59_35_,
            employe0_.NUM_AGENCE_EMPLOYE as NUM60_35_,
            employe0_.CONJ_MUT_EMPLOYE as CONJ61_35_,
            employe0_.EMPLOI_EMPLOYE as EMPLOI62_35_,
            employe0_.NBR_CONTRAT_EMPLOYE as NBR63_35_,
            employe0_.NB_ENFANT_EMPLOYE as NB64_35_,
            employe0_.NIV_INST_EMPLOYE as NIV65_35_,
            employe0_.NUM_COMPTE_EMPLOYE as NUM66_35_,
            employe0_.POSTE_TEL_EMPLOYE as POSTE67_35_,
            employe0_.SIT_MILITAIRE_EMPLOYE as SIT68_35_,
            employe0_.RIB_EMPLOYE as RIB69_35_,
            employe0_.FIN_POSITION_EMPLOYE as FIN70_35_ 
        from
            stest1.employe employe0_ 
        where
            employe0_.NOM_EMPLOYE=? 
            and employe0_.PRENOM_EMPLOYE=?
    01:41:03,078 INFO  [lifecycle] WARNING: FacesMessage(s) have been enqueued, but may not have been displayed.
    sourceId=null[severity=(INFO 0), summary=(La connexion a échoué.), detail=(La connexion a échoué.)]
    sourceId=null[severity=(WARN 1), summary=(La transaction a échoué.), detail=(La transaction a échoué.)]
    si quelqu'un peut m'aider. Merci

  2. #2
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Bonjour,

    Je ne connais pas vraiment Seam, mais j'ai l'impression que de toutes façons le problème n'est pas dû à ça...

    Déjà, je pense qu'il doit y avoir un problème de connexion à la BD. Es-tu sûr de tes identifiants / url ?

    Sinon, ta façon d'écrire ton HQL n'est pas bon. Fais plutôt ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ...
    Query query = entityManager.createQuery("select e from Employe e where e.nomEmploye = :username and e.prenomEmploye = :password");
    query.setParameter("username", identity.username);
    query.setParameter("password", identity.password);
    emp = (Employe) query.getSingleResult();
    ...
    (c'est normal que e.prenomEmploye fasse référence à son password au fait ? )

    Dernier point : Les accès à la BD, il faut vraiment les mettre au niveau DAO, appelé par la couche service. Les beans eux, ne font qu'appeler la couche Service... Le sujet a été maintes fois aborder sur le forum JSF, je te laisse chercher si tu désires plus d'informations à ce sujet...
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

Discussions similaires

  1. Problème "LoadModule ssl_module modules/mod_ssl.so"
    Par ldcarpathes dans le forum Apache
    Réponses: 9
    Dernier message: 24/01/2008, 11h07
  2. Formulaires : problème avec les slashes et les quotes
    Par GarGamel55 dans le forum Langage
    Réponses: 1
    Dernier message: 12/10/2005, 15h59
  3. problème avec les transactions
    Par Invité dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 20/07/2005, 11h43
  4. Problème avec des transaction
    Par Oluha dans le forum ASP
    Réponses: 16
    Dernier message: 01/03/2005, 15h40

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