Lors de l'ajout des capacités d'internationalisation à une application Web Oracle (build sur mod_plsql), j'aimerais interpréter le paramètre HTTP_ACCEPT_LANGUAGE et de l'utiliser pour régler divers paramètres NLS_ * dans la session Oracle.Existe-t-il un moyen facile de convertir HTTP_ACCEPT_LANGUAGE en paramètres Oracle NLS_LANG?
Par exemple:
HTTP_ACCEPT_LANGUAGE=de
alter session set nls_territory=germany;
alter session set nls_lang=...
Cependant, vous pourriez obtenir quelque chose de plus compliqué, je suppose ...
HTTP_ACCEPT_LANGUAGE=en-us,en;q=0.5
Comment ont abordé des gens ce genre de chose avant?
EDIT - suite à la réponse détaillée de Curt ci-dessous
Merci pour la réponse claire et détaillée Curt. Cependant, je ne me suis pas vraiment montré clair, car je demandais vraiment s'il y avait des widgets Oracle qui traitaient cela.
Je suis déjà sur la route de l'analyse syntaxique manuellement la variable HTTP_ACCEPT_LANGUAGE et - comme Curt a indiqué dans sa réponse - il y a quelques zones subtiles de complexité. Il sent comme quelque chose qui doit avoir été fait plusieurs fois auparavant. Au fur et à mesure que j'écrivais de plus en plus de code, j'avais ce sentiment de «je réinvente la roue». :)
Il doit y avoir une approche Oracle existante pour cela - probablement quelque chose dans iAS ??
EDIT - a trébuché à travers la réponse
Alors que vous cherchez quelque chose d'autre, je suis tombé sur le paquet UTL_I18N, qui ne Wham exactement que je suis après:
Is there an easy way to convert HTTP_ACCEPT_LANGUAGE to Oracle NLS_LANG settings?
Merci pour la réponse claire et détaillée Curt. Cependant, je ne me suis pas vraiment montré clair, car je demandais vraiment s'il y avait des widgets Oracle qui traitaient cela. Je suis déjà sur la route d'analyser manuellement la variable HTTP_ACCEPT_LANGUAGE et - comme vous l'avez indiqué dans votre réponse - il devenait plus impliqué. C'était comme si quelque chose avait dû être fait plusieurs fois auparavant. J'ai ressenti ce sentiment de «je réinvente la roue». :) –
:-(. –