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

Spring Java Discussion :

ResourceBundle associé à une base


Sujet :

Spring Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Février 2005
    Messages : 48
    Par défaut ResourceBundle associé à une base
    Bonjour à tous,

    Dans le cadre d'un développement de progiciel, nous nous posons actuellement la question concernant les messages utilisateurs. Nous utilisons Spring pour la partie MVC, je trouvais l'utilisation des validators couplés avec le tag <error> interessant, seulement comme dis plus haut, nous travaillons sur un progiciel, un fichier properties à plat ne peut pas nous satisfaire, nous avons besoin d'un outils d'administration des messages utilisateurs et gérer un fichier à plat n'est pas simple. C'est pourquoi je pense que le même mécanisme couplé avec une bdd pourrait être sympa !

    J'ai fait quelques recherches sur google, apparemment il faudrait étendre ResourceBundle, faire la connexion a la base, et puis ça devrait fonctionner de la même manière par la suite. Je voulais savoir si parmi la communauté développez.com quelqu'un pouvait faire partager son experience ou ses impressions sur ce genre de projet.

    Merci d'avance
    Arnaud

  2. #2
    Rédacteur
    Avatar de Hikage
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 177
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 177
    Par défaut
    Dans mon précedent job, j'ai du faire la meme chose.

    Mais je n'avais pas étendu RessourceBundle mais implémenter l'interface MessageSource.

    Cela est peut être possible via le ressourceBundle mais je n'ai jamais tenter.

    Sinon avec MessageSource cela marchait sans problème
    Hikage
    SCJP / SCWCD & SCWSJD Certified / Spring Framework Certified
    [Personal Web] [CV]

    F.A.Q Spring Framework - Participez !

  3. #3
    Membre averti
    Inscrit en
    Février 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Février 2005
    Messages : 48
    Par défaut
    Merci Hikage,

    Au niveau du multilangue, comment ça se passe ? Est ce qu'on suffixe les tables selon la locale (en,fr, etc etc ) ?

    Merci beaucoup
    Arnaud

  4. #4
    Rédacteur
    Avatar de Hikage
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 177
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 177
    Par défaut
    La, c'est a toi de gérer

    Si je me rappelle bien, dans les méthodes tu as la locale en paramètre.
    Donc a toi de récupérer via des requete SQL selon la locale récupérée
    Hikage
    SCJP / SCWCD & SCWSJD Certified / Spring Framework Certified
    [Personal Web] [CV]

    F.A.Q Spring Framework - Participez !

  5. #5
    Membre averti
    Inscrit en
    Février 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Février 2005
    Messages : 48
    Par défaut
    D'accord je vois bien ! Merci beaucoup hikage, je vais tester ça, si j'ai des soucis je repasserais par là


    A bientot
    Arnaud

  6. #6
    Membre averti
    Inscrit en
    Février 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Février 2005
    Messages : 48
    Par défaut
    Re,

    comme prévu, me revoila !

    Bon j'ai pu m'interessé au problème un ptit peu mais j'ai un peu de mal à voir l'architecture que tout ça doit prendre. Mon projet utilise Spring/Hibernate. J'ai donc mes classes Hibernate qui me permettent de faire des requêtes sur ma bdd ex: messageRepository.FindById(id)

    Bon je dois y ajouter par dessus tout ça ma couche qui me permet de récupérer les bons messages.

    Apparemment j'ai deux choix :
    soit implémenter MessageSource
    soit étendre AbstractMessageSource

    déjà le dilemme se pose... en implémentant MessageSource si je comprends bien, j'ai trois méthodes, par exemple si j'utilise

    String getMessage(String code, Object[] args, Locale locale){
    //je récupere de ma base le bon message
    //et je le renvoie
    }

    et si j'étends AbstractMessageSource, je dois implémenter la méthode

    protected abstract MessageFormat resolveCode(String code, Locale locale) {

    }

    ... je suis un peu débutant dans tout ça j'ai du mal a faire mon choix, et puis du coup je ne vois plus trop trop l'interet d'implémenter l'interface MessageSource par exemple, elle me fournit juste des méthodes, certes qui correspondent exactement à ce que je veux, mais pourquoi ne developperai-je pas une classe implémentant une méthode avec une signature similaire ... quel en est l'interet ?? y'en a un c'est sur !!!

    Merci de votre aide
    Arnaud

  7. #7
    Membre averti
    Inscrit en
    Février 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Février 2005
    Messages : 48
    Par défaut
    Me revoilà,

    J'ai pu bien avancer ce thème. Je récupère depuis ma base de données mes messages selon la locale avec hibernate. Ce n'est pas si compliqué....

    En fait, j'ai étendu la classe AbstractMessageSource dans laquelle j'ai injecté mon service DAO me permettant d'interroger la base. Ce que j'aimerais faire maintenant, c'est pour les erreurs soulevées par Validator. En effet j'aimerais pourvoir utiliser le tag errors de spring qui permet d'intercepter les messages d'erreurs...

    D'après ce que je comprends dans la doc et sur le tuto de mr Tahe, si dans application-context.xml je définit un bean "messageSource" pointant sur ma classe que j'ai redéfinit, il devrait automatiquement appelé les méthodes getMessage() pour aller récupérer les messages d'erreurs... mais les méthodes du type "error.rejectValue(field,key) n'y font pas appel.
    Dois-je redéfinir d'autres classes pour récupérer mes messages d'erreurs via ma classe de résolution ???

    Merci de votre aide
    Arnaud

Discussions similaires

  1. ResourceBundle liée à une base de données ?
    Par belrifou dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 13/04/2010, 14h05
  2. comment associer une icone a une base de donnée
    Par soussou92 dans le forum Access
    Réponses: 4
    Dernier message: 07/07/2008, 10h24
  3. Comment associer un CRecordSet à une base ?
    Par SmOkEiSBaD dans le forum MFC
    Réponses: 3
    Dernier message: 18/06/2008, 14h38
  4. Réponses: 5
    Dernier message: 01/10/2007, 23h27
  5. associer une base de données(access) a un dbgrid
    Par ange1708 dans le forum MFC
    Réponses: 3
    Dernier message: 11/06/2002, 12h18

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