System.getProperty(“user.Sprache") immer wieder "en" nicht vom Benutzer eingestellte Sprache
Dies ist nun trocknen mich verrückt.
Ich habe ein javaApplet auf der Spitze eines asp.net Seite.
Innerhalb dieses javaApplet ich muss erkennen die Benutzer bevorzugten Sprache
FireFox-Extras-Einstellungen-Inhalt-Sprachen-Wählen.Ich habe 3 Sprachen und der firstOne
Spanisch/Spanien[es-es], indem Sie die folgenden
String locale= System.getProperty("user.Sprache")+"-"+System.getProperty("user.region");
Ich erwarte locale "es-es"
aber ich bekomme immer "en-null" und "Benutzer".Sprache ist immer "en"
Wie kommst du auf die userPreferred Sprache in Java?
Das richtige Ergebnis sollte sein, "es-es"
Anregungen#?
vielen Dank
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du musst die locale als parameter an das applet...
Dies ist natürlich gerendert werden kann, die von Ihrem server-Seite ASP.NET code anhand der Accept-Language-header.
Verwenden Sie dann das applet
getParameter(String name)
Methode zum abrufen des Gebietsschemas, die übergeben wurde.Rückgabewert von einem Aufruf von System.getProperty() hat keine Beziehung mit dem Firefox die bevorzugte Sprache ist. Wenn Sie einen Blick auf die computer-Sprache-Einstellungen, ich bin mir sicher, dass werden Sie entdecken, dass en und null nicht aus dem nichts kommen.
Nun, wie man browser bevorzugt langages von applet ist eine andere Frage, für die , um ehrlich zu sein, habe ich keine Antwort.
Vielleicht hilft dies ja: Java-Applet Locale-Einstellung
Vielleicht übergeben Sie den browser bevorzugte Sprache mit javascript als argument für Ihr applet.
Applets laufen auf dem client-Rechner und haben keine Kenntnis über die Anfragen vom browser an den server. Wenn Sie möchten, um die Informationen aus der Anfrage, ich schlage vor, hinzufügen, dass als parameter in das applet-tag bei der Erstellung der web-Seite.
Nicht wissen was Los ist, aber warum gehst du nicht einfach mit den vorhandenen
java.util.Locale
API?Oder noch besser, verwenden Sie die
Applet's
geerbt diegetLocale()
Methode:[Edit] Oh, es ist klar. Sie wollen Holen Sie sich die client-Anwendung die bevorzugte Sprache, nicht der Betriebssystem-Plattform die bevorzugte Sprache. In diesem Fall müssen Sie JS übergeben, der es zu dem applet in der Theorie: