2010-08-13 5 views
0

Je développe une application en utilisant Grails et GWT pour un côté client. Je veux utiliser le même date format côté client et côté serveur (de préférence défini dans un fichier). Jusqu'ici j'ai compris que Grails a son propre mécanisme d'internationalisation (grails-app/i18n). Je sais que je peux accéder à ces messages à partir de n'importe quel code de serveur en utilisant le contexte de l'application. Je peux également accéder à n'importe quel fichier de ressources dans le répertoire web-app.Grails + GWT - en utilisant le même format de date

Pour le côté client, je peux utiliser l'interface ConstantsWithLookup et GWT.Create(...) pour obtenir une instance de celui-ci.

Mais, je n'ai toujours pas trouvé de bonne solution pour intégrer ces deux ensemble, donc j'ai date format défini en un seul endroit. Des idées ou des astuces?

Merci, Sergey

+0

Après avoir cherché sur Google pendant un moment, j'ai trouvé ceci - http://www.cacoethes.co.uk/blog/groovyandgrails/internationalising-your-grails-gwt-applications Je vais enquêter, peut-être que ma question est bien décrit ici (j'espère :) –

+0

Cela peut aider: http://groups.google.com/group/grails-gwt/browse_thread/thread/6e1bcac2844f062 –

Répondre

0

Après avoir creusé dans Grails plus, je suis venu à une solution. J'ai mis constante dans le fichier .properties sous grails-app/i18n. Ensuite, je me connecte à eventCompileEnd et je copie des ressources de grails-app/i18n à un paquet spécifique dans target\generated-sources. Une fois cette étape terminée, je génère des interfaces google I18N à l'aide de fichiers de propriétés copiés. J'ai mis cette fonctionnalité pour séparer le plugin.

_Events.groovy:

includeTargets << new File("${myPluginDir}/scripts/_MyInternal.groovy") 

eventCompileEnd = { 
    internalCopyMessageResources(); 
} 

eventCopyMessageResourcesEnd = { 
    generateI18NInterface(); 
} 

Maintenant, il est possible d'accéder à des données localisées du côté serveur et du côté client.

Questions connexes