2010-03-11 4 views

Répondre

4

Le paramètre régional préféré pour un utilisateur est disponible en tant qu'en-tête de requête ("Accept-Language"). Il est automatiquement renseigné par le navigateur de l'utilisateur en fonction de ses préférences. Ensuite, vous pouvez stocker cette information dans la session de l'utilisateur et la récupérer plus tard, le cas échéant.

+0

Vous pouvez le faire, mais que se passe-t-il si l'utilisateur change la langue préférée du navigateur après l'établissement de la session? Donc, vous devrez rafraîchir ceci à chaque demande. –

+0

donc, vous devez vérifier chaque demande. vous pourriez y parvenir en utilisant un filtre. – Tony

+0

Je suis d'accord avec l'idée du filtre. Le filtre peut renseigner la session de l'utilisateur avec les informations sur les paramètres régionaux. –

0

En tant que its Javadoc montre, il n'y a aucune méthode qui fait exactement cela. Vous pouvez simplement l'obtenir à partir de la requête (de préférence) ou le stocker comme attribut de la session vous-même.

0

En général, nous ne pouvons pas obtenir d'un HttpSession l'objet httpRequest approprié. Cependant, il existe une solution de contournement.

Vous pouvez créer un filtre, dans le filtre, vous avez tout, httpSession, httpRequest, etc. Ensuite, créez une variable ThreadLocal pour stocker l'objet HttpRequest. Ou simplement stocker des attributs de requête dont vous avez besoin dans vos méthodes ultérieures.

Votre méthode devrait être en mesure d'obtenir la valeur de ThreadLocal. HttpRequest, ou les paramètres de langue ou tout ce que vous avez stocké auparavant.

Je ne sais pas si cela a répondu à votre question.

Questions connexes