반응형
지도 출력을 위한 기능을 만드는 중이었는데
어떤 zoom level에서는 오류 없이 실행되다가, 다른 zoom level에서는 img 값이 넘겨지지않아 오류가 일어났다.
canvas.toDataURL을 이용해서 이미지값을 받아냈고
이를 ajax로 넘겼더니 자바에서 이미지가 null 값으로만 나왔다.
디버깅해보니 ajax 전송하는 함수에서까지 img 값이 잘 들어와있었고
request 받는 controller 에서는 null 처리되어나왔다.
그 사이 데이터가 변질된는 것도 아니고 방법을 알 수 없어서 삽질을 꽤 했는데
(줌 레벨에 따라 오류가 나니까 시야가 그쪽으로만 좁혀졌었다.)
그러다가 전송하는 용량이 2mb 이상일 때만 오류가 나는 것을 발견하였고
전송 방법이 POST 여도 POST Size 제한이 있다는 것을 이제 알았다. (갈 길이 멀다ㅜㅜ)
검색해보니 POST로 전송할 수 있는 기본 용량이 2MB라고 나오길래
아..이거였구나 싶었다.
오랫동안 삽질한 문제는 server.xml 에서
maxPostSize="값" 를 추가시켰더니 해결되었다.
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" maxPostSize="20971520"/>
maxPostSize | The maximum size in bytes of the POST which will be handled by the container FORM URL parameter parsing. The limit can be disabled by setting this attribute to a value less than zero. If not specified, this attribute is set to 2097152 (2 megabytes). Note that the FailedRequestFilter can be used to reject requests that exceed this limit. |
maxPostSize="0" 이나 maxPostSize="0보다 작은값"으로 설정하면 POST SIZE가 무제한이라고는 하나
2.5 MB를 넘길일은 없을 것같아서 혹시몰라 무제한으로 설정하진않았다.
숫자는 바이트 기준이라 바이트계산기로 2.5MB 찾아서 넣었다...
설정하고나니까 엄청 잘된다 ㅜㅜ흑흑..모르는게 죄
공부 열심히 해야겠다..
반응형
'error log' 카테고리의 다른 글
[톰캣(tomcat)] json으로 값 받아올 때 한글 깨짐 (0) | 2024.02.15 |
---|---|
org.apache.jasper.JasperException: JSP를 위한 클래스를 컴파일할 수 없습니다. (0) | 2023.07.21 |
댓글