tomcat ISO-8859-1 encoding error
java.io.CharConversionException: Not an ISO 8859-1 character:
변경 전
response.setContentType("text/html; charset=UTF-8");
response.setCharacterEncoding("UTF-8");
ServletOutputStream out = response.getOutputStream();
out.println(...MY-UTF-8 CODE...);
변경 후
response.setContentType("text/html; charset=UTF-8");
response.setCharacterEncoding("UTF-8");
PrintWrite out = response.getWriter();
out.println(...MY-UTF-8 CODE...);
오류는
response.setContentType("text/html; charset=UTF-8");
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();//
out.println(output);
변경하여 해결됨
톰켓에서 오류나는 이유는 ISO-8859-1 형식으로 되어있어서
get방식 오류
server.xml
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URLEncoding="UTF-8"/>
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URLEncoding="UTF-8"/>
으로 변경
post방식 오류
web.xml
<filter>
<filter-name>setCharacterEncodingFilter</filter-name>
<filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>setCharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
실행시 추가.
VM 아큐면트 추가.
-Dfile.encoding=UTF-8
파일 상단에 추가
<%@pagepageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
<%
request.setCharacterEncoding("utf-8");
%>
https://kdh2625.tistory.com/678
'IT > JAVA' 카테고리의 다른 글
java 한글깨짐 변환 (0) | 2019.09.24 |
---|---|
Eclipse SVN target 제외 (0) | 2019.07.01 |
getOutputStream getWriter 차이 (0) | 2019.03.27 |
maven (메이븐 구조, 차이점, 플러그인, 라이프사이클, 의존성, pom.xml) (0) | 2019.03.25 |
JavaServer Pages 기술 버전 1.x 언어의 코드 규칙 (0) | 2018.12.26 |
JSTL 정리 (0) | 2018.12.11 |
log4j 로그레벨 (0) | 2018.10.29 |