LINUX.ORG.RU

utf-8 в grails + tomcat

 , ,


1

1

Набросал приложение в Grails на ноуте с виндой - все ок - в таблицу добавляются записи с русскими полями. Залил war на сервер с Ubuntu mysql+tomcat7 - новый записи с русскими символами появляются как знаки вопроса.

Базу создавал: create database mydb character set utf8;

select * from event; после добавления новой записи показывает знаки вопроса тоже, т.е. кодировке плохо судя по всему на этапе поста формы.

Вот здесь решение, которое применял для приложения, которое писал на голом jsp http://yan.zlobin.name/86

Но там поминмо URIEncoding=«UTF-8» в server.xml (который есть) требуется еще явно фигачить прямо в коде jsp-страницы:

request.setCharacterEncoding («UTF-8»);

В JSP я к этой хрени привык (выносил в отдельных инклудник), а здесь все генерится автоматически (в контроллерах использую «def scaffold = Event»), как быть?

★★★★★

Ответ на: комментарий от vtVitus

это все уже есть в config.groovy,

Application Status

    App version: 0.1
    Grails version: 2.2.4
    Groovy version: 2.0.8
    JVM version: 1.7.0_25
    Reloading active: false
    Controllers: 3
    Domains: 2
    Services: 2
    Tag Libraries: 13

bender ★★★★★
() автор топика
Ответ на: комментарий от vtVitus

ога, там фикс в 2.3, а у меня 2.2, хотя вчера блин качал.

bender ★★★★★
() автор топика
Ответ на: комментарий от vtVitus

хрен бы там, ему пох на версию - все равно знаки вопроса

bender ★★★★★
() автор топика

В grails вроде спринг внутрях. В springmvc приложении помогало вот такую фигню в web.xml добавить.

<filter>
        <filter-name>encoding-filter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
        <init-param>
            <param-name>forceEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>

    <filter-mapping>
        <filter-name>encoding-filter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
Nagwal ★★★★
()
Ответ на: комментарий от Nagwal

Добавил в начало web.xml - легче не стало.

При том, что в applicationContext.xml уже изначально было такое:

<bean id=«characterEncodingFilter» class=«org.springframework.web.filter.CharacterEncodingFilter»>
		<property name=«encoding»>
			<value>utf-8</value>
		</property>
	</bean>

но и добавление

<bean id=«characterEncodingFilter» class=«org.springframework.web.filter.CharacterEncodingFilter»>
		<property name=«encoding»>
			<value>utf-8</value>
		</property>
		<property name=«forceEncoding»>
		    <value>true</value>
		</property>
	</bean>

не алё.

bender ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.