Tomcat, Servlet, Exceptio, кодировка
От: sinnus  
Дата: 19.12.05 14:19
Оценка:
Использую JBoss 4.0.1SP1.
В сервлете в методе doGet выстовляю кодировку:

...
httpServletRequest.setCharacterEncoding("UTF-8");
httpServletResponse.setCharacterEncoding("UTF-8");
...

Далее формирую HTML-страницу. Все отображается в браузере нормально.
Но если возникнет исключение _после_ того, как в IO что-то ушло, то
русский текст этого исключения будет отображаться вопросами. Если ничто
не выводить в буфер IO, то все будет нормально.
Что еще нужно сделать для нормальной работы с русскими символами?
Спасибо.
Re: Tomcat, Servlet, Exceptio, кодировка
От: Blazkowicz Россия  
Дата: 19.12.05 14:31
Оценка:
Здравствуйте, sinnus, Вы писали:

S>Использую JBoss 4.0.1SP1.

S>В сервлете в методе doGet выстовляю кодировку:

S>
S>...
S>httpServletRequest.setCharacterEncoding("UTF-8");
S>httpServletResponse.setCharacterEncoding("UTF-8");
S>...
S>

S>Далее формирую HTML-страницу. Все отображается в браузере нормально.
S>Но если возникнет исключение _после_ того, как в IO что-то ушло, то
S>русский текст этого исключения будет отображаться вопросами. Если ничто
S>не выводить в буфер IO, то все будет нормально.
S>Что еще нужно сделать для нормальной работы с русскими символами?

Не очень понял что такое IO и буфер. Но вот про это в курсе?

This method has no effect if it is called after getWriter has been called or after the response has been committed.

Re: Tomcat, Servlet, Exceptio, кодировка
От: sinnus  
Дата: 19.12.05 15:19
Оценка:
Отображаются вопросиками русские буквы в стандартной странице 500 Tomcat.
Re[2]: Tomcat, Servlet, Exceptio, кодировка
От: sinnus  
Дата: 20.12.05 03:56
Оценка:
Здравствуйте, Blazkowicz, Вы писали:

B>Здравствуйте, sinnus, Вы писали:


S>>Использую JBoss 4.0.1SP1.

S>>В сервлете в методе doGet выстовляю кодировку:

S>>
S>>...
S>>httpServletRequest.setCharacterEncoding("UTF-8");
S>>httpServletResponse.setCharacterEncoding("UTF-8");
S>>...
S>>

S>>Далее формирую HTML-страницу. Все отображается в браузере нормально.
S>>Но если возникнет исключение _после_ того, как в IO что-то ушло, то
S>>русский текст этого исключения будет отображаться вопросами. Если ничто
S>>не выводить в буфер IO, то все будет нормально.
S>>Что еще нужно сделать для нормальной работы с русскими символами?

B>Не очень понял что такое IO и буфер. Но вот про это в курсе?

B>

B>This method has no effect if it is called after getWriter has been called or after the response has been committed.

Имеется ввиду следующее:

        try {
            response.setContentType("text/html;charset=UTF-8");
            request.setCharacterEncoding("UTF-8");
            response.getWriter().println("текст");
            throw new Exception("Исключение");
        } catch (Exception e) {
            System.out.println(response.getCharacterEncoding());
            throw new ServletException(e);
        }
Re: Tomcat, Servlet, Exceptio, кодировка
От: sinnus  
Дата: 20.12.05 04:07
Оценка:
И еще один момент.
Создая свой Error.jsp и прописал в web.xml:

    <!-- The default error page -->
    <error-page>
        <exception-type>java.lang.Exception</exception-type>
        <location>/Error.jsp</location>
    </error-page>

В этой странице я вывожу русский текст.
Если обратиться к ней напрямую, к примеру, через http://192.168.0.2:8080/web/Error.jsp, то русский текст покажется
нормально. Если перейти к ней по ексепшену, то вопросики
Что делать?
Re: Tomcat, Servlet, Exceptio, кодировка
От: kxalex Украина  
Дата: 20.12.05 09:52
Оценка:
Здравствуйте, sinnus, Вы писали:

S>Использую JBoss 4.0.1SP1.

S>В сервлете в методе doGet выстовляю кодировку:

S>
S>...
S>httpServletRequest.setCharacterEncoding("UTF-8");
S>httpServletResponse.setCharacterEncoding("UTF-8");
S>...
S>

S>Далее формирую HTML-страницу. Все отображается в браузере нормально.
S>Но если возникнет исключение _после_ того, как в IO что-то ушло, то
S>русский текст этого исключения будет отображаться вопросами. Если ничто
S>не выводить в буфер IO, то все будет нормально.
S>Что еще нужно сделать для нормальной работы с русскими символами?
S>Спасибо.

Попробуй поставить фильтр.
Re[2]: Tomcat, Servlet, Exceptio, кодировка
От: sinnus  
Дата: 21.12.05 07:15
Оценка:
Здравствуйте, kxalex, Вы писали:

K>Попробуй поставить фильтр.

Пробовал, не помогло
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.