2014-09-01 2 views
0

javax.portlet.PortletReqest 객체에서 문자 인코딩을 설정하려고하는데이 객체에는 가지고있는 모든 예제에서 사용되는 setCharacterEncoding() 메소드가없는 것 같습니다. Liferay 사이트를 비롯한 여러 사이트를 방문하십시오. 그것이 가지고있는 것은 setAttribute ("characterEncoding", "UTF-8")처럼 설정할 수 있다고 가정하기 때문에 키와 값을 지정할 수있는 setAttribute() 메서드입니다. 또는 비슷한 것 어디서나 사용 가능한 속성의 포괄적 인 목록을 찾을 수 없었습니다. Liferay 6.1을 사용 중입니다. 스페인어 문자를 표시하는 데 문제가있어이를 수행하려고합니다.Liferay 6.1에서 문자 인코딩 설정

+0

나는 그것을 알아 냈다. HTTPServletRequest를 가져 와서 이렇게 설정해야합니다. PortalUtil.getHttpServletRequest (request) .setCharacterEncoding ("encoding"); – steven35

답변

2

그것은 문자 인코딩을 지정하는 PortletRequest/PortletResponse에서 이해가되지 않습니다 : ActionRequest (PortletRequest의 하위 유형) 실제로 setCharacterEncoding는 RenderRequest에 어떤 이해가되지 않습니다 정의합니다. 또한 이유로 인해 HttpServletRequest에서 보호됩니다. 일반적으로 포틀릿에있을 때 이미 파싱 된 항목의 양을 알지 못합니다.

현재 버전의 현재 응용 프로그램 서버에서 현재 작동하는 것을 발견했을 수도 있습니다. 앞으로도 계속 일하기를 바랍니다. 사실 가장 불리한 순간에 깨뜨릴 수 있도록 준비하십시오.

근본적인 문제에 대한 통찰력을 제공하는 것이 좋습니다. 인코딩과 관련하여 왜 혼란에 빠질 필요가 있다고 생각하십니까? 적절한 응용 프로그램 구성 또는 잘못 설정 한 다른 설정처럼 간단 할 수 있습니다.

+0

스페인어 문자를 표시하는 데 문제가 있습니다. 문자는 catalina.out에서 이미 잘못되었습니다. 예를 들어 나는 에 UTF-8 또는 Latin-1을 설정했는지에 따라 ñ 대신 ¿ ½ 또는 get을 얻습니다. 당신이 바로 그 길입니다. request.setCharacterEncoding()이 작동하지 않습니다. – steven35

관련 문제