2012-01-26 2 views
0

1.3.7에서 2.0.0으로 애플리케이션을 마이그레이션하는 중 이상한 문제가 발생했습니다. 우리의 브라우저에서 UTF-8로 인코딩 된 HTML을 렌더링합니다. Grails 1.3.7에서 2.0.0으로 마이그레이션하는 동안 인코딩 문제가 발생했습니다.

우리가 'E'문자를 입력

(코드 포인트 : 00E9/UTF8 진수 바이트 : C3 A9) 입력 및 컨트롤러에 보내, 우리는

는 요청이 잘되는 C3 (83) (C2)의 A9에게 돌아가 인코딩 된 (% C3 % A9)하지만 우리 params.field는 방금 말한 것을 반환합니다

우리의 1.3.7 Grails 앱은 동일한 컴퓨터에서 잘 실행됩니다.

this problem 우리는 폐쇄되어있는 것으로 보이고 webxml 플러그인을 1.4.1로 업그레이드했지만 아무 것도 변경되지 않았습니다.

생성 된 web.xml에서 Spring Security-Core web.xml 필터가 CharacterEncodingFilter 앞에 선언되었고 플러그인을 제거하려고 시도했습니다. 도움이되지 않았다.

우리는 같은 설정으로 Grails는 2.0과 안녕하세요 세계 응용 프로그램을 설정 한,하지만

아무도 무슨 일이 일어나는 알고 있는가

작동? 여기

우리의 application.properties

#Grails Metadata file 
#Thu Jan 26 17:50:12 CET 2012 
app.grails.version=2.0.0 
app.name=plugin-web 
app.servlet.version=2.4 
app.version=0.1 
plugins.hibernate=2.0.0 
plugins.joda-time=1.3.1 
plugins.resources=1.1.5 
plugins.spring-security-core=1.2.7.1 
plugins.tomcat=2.0.0 

답변

1

좋아, 그래서 우리가 2.0.0 프로젝트를 마이그레이션 할 때 타이밍 문제

것 같다 Grails는 대한 인 webxml 1.4.0 플러그인을 설치 우리의 계획. 그 이후로 1.4.1 버전으로 업그레이드하여도 우리에게는 불가능했으며 여러 번 프로젝트를 정리하여 의도 한대로 프로젝트를 작동하게 만들었습니다.

백업 된 1.3.7 버전으로 돌아가서 grails 2.0으로 업그레이드했습니다. 그런 다음 grails가 webxml 1.4.1 플러그인을 설치했고 모두 잘 동작했습니다. 1.4.0 버전으로 다운 그레이드하면 문제가 다시 나타납니다.

모든 것이 제대로 작동합니다. grails-2.0.0이 1.4.0 버전에 대한 링크를 어디에 캐시했는지 모르겠다. 우리가 프로젝트를 정리했기 때문에, rm -rf'ed .m2, .ivy2, .groovy-ivy-cache (Everything ... There 파일 시스템에 남아있는 rm 명령 만 :-D). 그러나 더 이상 내 문제가 아닙니다.

관련 문제