Wie kann Gebietsschema.setDefault(new Locale ("en", "US")) zur Laufzeit geändert werden?
Ich immer auf der Suche nach der Antwort auf die Vorgehensweise zum zurücksetzen/ändern des Locale
von Java (Spring) web-Anwendung, sobald es über die Locale.setDefault(new Locale ("en", "US"))
. Kann mir bitte jemand helfen, denn es ist frustrierend zu sehen, dass, nachdem ich die Locale in meiner web-app, ich kann es nicht ändern, einfach durch Aufruf Locale.setDefault(new Locale ("newLang", "newCountry"))
.
Ist das Gebietsschema wird auf dem server zwischengespeichert?
InformationsquelleAutor partizan | 2011-11-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
Locale.setDefault
ist eine Globale Sache. Wenn Sie zwei Benutzer, die über verschiedene Gebietsschemas, die nicht funktionieren.Sollten Sie vielleicht setzen Sie das Gebietsschema in der
HttpServletRequest.getSession()
.Nachdem wir haben der globalen setDefault es auch wechselte die Sprache und die Protokollierung von unserem Applikations-server.
InformationsquelleAutor Udo Held
Den
Locale.setDefault(...)
hat keine Einschränkungen, wie und Wann oder wie oft es aufgerufen werden kann. Die änderung kann verhindert werden, indem der Sicherheits-manager, aber ich vermute, es ist nicht Ihr Fall, da Sie nicht noch irgendwelche Ausnahmen (nur für den Fall, obwohl, stellen Sie sicher, wenn Sie nicht ausblendenSecurityException
in einem try-catch-block).Anderen Grund, warum könnten Sie beobachten ein solches Verhalten, ist das vielleicht Ihre Anwendung ruft die Standard-locale nur einmal, speichert es und verwendet für immer?
InformationsquelleAutor MaDa
InformationsquelleAutor hassan goda