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 :

Mon Autocomplete en Java ee ne fonctionne pas sous JSF


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2012
    Messages : 6
    Par défaut Mon Autocomplete en Java ee ne fonctionne pas sous JSF
    Bonjour tout le monde
    J'ai un sérieux problème qui me tracasse depuis des semaines sous java ee.
    J'ai une BD sous postgreSql qui contient les tables Établissement , Inspection et CentreEcrit. Je veux saisir un Centre d’Écrit en tenant compte de l'inspection et de Établissement. Sur ma vue je selectionne l'Inspection mais je veux que le champs de l’Établissement soit autocomplete. pour se faire, dans ma couche metier j'ai creer une Methode listerAutocomplete :
    Code que voici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    @Override
        public List<Etablissement> listerAutocomplete(String queryEta) {
            String jpql ="SELECT e FROM Etablissement e "
                    + "WHERE UPPER(e.libelleEtablissement) LIKE UPPER(:libelleEtablissement)";
            Query query = this.em.createQuery(jpql);
            query.setParameter("libelleEtablissement", queryEta + '%');
            return query.getResultList();
        }
    Dans mon bean CentreEcritBean voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public List<Etablissement> completeEtablissement(String query){
               return etablissementService.listerAutocomplete(query);
          }
    Et dans ma page Jsf mon champs autocomplete ne marche pas quand je tape une lettre correspondant à un établissement . Et dans mon glassFish j'ai cette erreur:
    Précis: SELECT id_etablissement, actif, code_etablissement, libelle_etablissement, version, id_type_etablissement FROM etablissements WHERE UPPER(libelle_etablissement) LIKE UPPER(?)
    bind => [%]
    Depuis là j suis bloqué sans savoir comment m'en sortir.
    Merci de bien vouloir m'aider

  2. #2
    Membre émérite Avatar de Cincinnatus
    Homme Profil pro
    Développeur d'applications métier
    Inscrit en
    Mars 2007
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur d'applications métier
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2007
    Messages : 593
    Par défaut
    Citation Envoyé par Mocktar Voir le message
    bind => [%]
    Est-ce que queryEta est bien renseigné ? On dirait que le "bind" se fait sur '%'.
    La requête sql marche t-elle avec '%' en paramètre ?

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2012
    Messages : 6
    Par défaut
    je tiens à rappeler que j ne suis pas un professionel en java ee mais
    au faite le queryEtat est le debut de libelleEtablissement, et '%' n'est que la suite, il es censé proposé la suite de ce que l'utilisateur a commencé par taper
    Merci de m'aider

  4. #4
    Membre émérite Avatar de Cincinnatus
    Homme Profil pro
    Développeur d'applications métier
    Inscrit en
    Mars 2007
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur d'applications métier
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2007
    Messages : 593
    Par défaut
    Vu que le problème concerne une requête, les 2 premiers points à vérifier sont :
    - le paramètre est-il bien transmis ? (quelle est la valeur transmise pour queryEta ?)
    - la requête générée est-elle correcte et tolère-t-elle un paramètre queryEta nul ? (avec une restriction en LIKE UPPER(%)) ?

    Comme je n'utilise pas PostgreSQL je ne peux pas tester. Mais rien qu'en écrivant
    LIKE UPPER(%) j'ai un doute. D'où la première question sur queryEta.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2012
    Messages : 6
    Par défaut
    Merci pour vos apports pour une solution. Au faites la valeur du parametre queryEtat est un String qui peut etre le debut du nom d'un etablissement scolaire : Quand l'utilisateur commence par taper la lettre "c" l'autocomplete doit etre en mesure de lui derouler tous les etablissement ayant le nom commencant par cette lettre et ainsi de suite.
    Pour le test vous pouvez utiliser n'importe quelle BD autre que PostgreSql.

  6. #6
    Membre émérite Avatar de Cincinnatus
    Homme Profil pro
    Développeur d'applications métier
    Inscrit en
    Mars 2007
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur d'applications métier
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2007
    Messages : 593
    Par défaut
    Citation Envoyé par Mocktar Voir le message
    Pour le test vous pouvez utiliser n'importe quelle BD autre que PostgreSql.
    Et vous, avez-vous testé sur votre base, en sql, directement ??

Discussions similaires

  1. [Imprimante] mon imprimante ne fonctionne pas sous DOS
    Par med_med dans le forum Périphériques
    Réponses: 3
    Dernier message: 13/08/2010, 11h23
  2. [MySQL] Mon moteur de recherche ne fonctionne pas sous ie
    Par ploufleouf74 dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 27/07/2009, 12h21
  3. Mon onmouseover ne fonctionne pas sous IE8
    Par idamarco dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 05/03/2009, 12h35
  4. Mon LPB2900 ne fonctionne pas sous WIN98
    Par mizou1978 dans le forum Périphériques
    Réponses: 1
    Dernier message: 30/01/2008, 00h31
  5. Java ne fonctionne pas sous Firefox
    Par Info-Rital dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 29/07/2004, 23h37

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