Tohle by vám snad mělo fungovat všude:
response.sendRedirect(java.net.IDN.toASCII(sURL));
Váš problém je v tom, že funkce response.sendRedirect(sURL); provede chybně
konverzi, protože máte nastaveno chybně kódování na serveru (není UTF-8). Dá
se to vyřešit pomocí filtru viz.
http://wiki.apache.org/tomcat/FAQ/CharacterEncoding.
Druhý problém je ten, že browser (a nejen on) musí podporovat národní znaky
domén (běžně používané s tím nemají problém IE tuším od verze 7, FF3 atd.)
což lze řešit konverzí IDN.
Funkce java.net.IDN.toASCII(sURL) vám vyřeší problémy oba.
Správné by asi bylo, mít nastaveno UTF-8 pro běh stránek, například pomocí
filtru a konverze IDN pak "asi" nebude potřeba.

Petr

PS: Jenom bych ještě upozornil na to, že funkcí java.net.IDN.toASCII
konvertujte pouze doménu, cesta a parametry s tímto překódováním vám
pravděpodobně způsobí chyby při zpracování.

2011/9/22 Radovana Straube <[email protected]>

> Doplnila som kodovanie do stranky, URL som prekonvertovala pomocou IDN. Na
> Tomcate, ktory standardne pouziva UTF-8, presmerovanie funguje. Bohuzial
> zakaznikov Tomcat ma ako standardne kodovanie ISO-8859-1, ktore nemozem
> menit. Neviem co mam este v programe nastavit na UTF-8, aby IDN konverzia
> fungovala aj tam.
>
> Dakujem
> Radovana Straube
> ------------------------------
> *From:* Petr Franta <[email protected]>
> *To:* Java <[email protected]>
> *Sent:* Thursday, September 22, 2011 8:45 PM
> *Subject:* Re: diakritika v nazve domeny a presmerovanie
>
> Pravděpodobně vám neběží stránky v UTF-8, protože správně je kódovaný text
> v UTF8 je *baf%C3%B6g* a ne *baf%f6g*. Pokud uděláte redirect na
> http://www.xn--bafg-7qa.de, tak by to mělo fungovat vždy (IDN konverze).
> Mrkněte jestli je JSP stránka uložená v UTF-8, doplňte správné kódování do
> stránky <%@page pageEncoding="UTF-8" %>
>
> Petr
>
> 2011/9/22 Radovana Straube <[email protected]>
>
> Dobry den,
>
> tym, ze bola povolena diakritika v nazvoch domen, sme narazili na
> nasledovny problem. Pri presmerovani na stranku, ktora ma v nazve
> diakritiku,  pomocou response.sendRedirect(), v IExplorer a Chrome funguje
> vsetko spravne, kdezto Firefox nazov domeny este zakoduje - napriklad z
> http://www.bafög.de <http://www.xn--bafg-7qa.de> spravi http://www.baf%
> f6g.de a preto je presmerovanie neuspesne.
> JSP-stranka, s ktorou sme toto spravanie testovali je v prilohe. Stretol sa
> uz niekto s takymto problemom? Da sa to  nejak vo Firefoxe obist?
> Googlovanim sme len zistili, ze URL musi byt kodovane v UTF-8 a to je
> bohuzial vsetko.
>
> Radovana Straube
>
>
>
>
>

Odpovedet emailem