[Spring] ResourceMessages in Controller oder Beans?

Hardi82

Mitglied
Hallo Leute,

von Spring kann ich per applicationContext-Eintrag die MessageResource_Dateien automatisch laden lassen und per #springMessage() in der View auslesen. Was aber, wenn ich in einer Bean die Nationalisierung benötige, um zum Beispiel in einer erstellten Datei die Sprache des Besuchers zu verwenden? Ist das irgendwie möglich oder muss ich da manuell mit "ResourceBundle appbundle = ResourceBundle.getBundle("international", Locale.getDefault());" rangehen?

LG
Hardie
 
Hallo Oliver,

erst einmal vielen Dank für deine Antwort. Mein Problem ist aber nich das Benutzen der MessageRessource in der View, das funktioniert soweit, sondern der Zugriff auf die Propertiedatei im Controller, um beispielsweise beim erstellen eines Dokuments (PDF, DOC etc.) ebenfalls Internationalisierung verwenden zu können. Im ApplicationContext sind meine Dateien schon definiert, aber wie greife ich jetzt im Controller darauf zu. Muss ich da beispielsweise über den Context gehen (request.getSession.getContext oder so)? Da hänge ich zur Zeit.

Grüße
Hardie
 
Für die meisten Frameworkresourcen gibt es *Aware interfaces, mit denen man Zugriff auf eben diese erlangt. Wenn du deinen Controller MessageSourceAware implementiert kannst du dir die MessageSource injecten lassen, die in einer Property halten und sie nach belieben verwenden.

Gruß
Ollie
 

Neue Beiträge

Zurück