jsp를 tomcat으로 돌리는데 이러한 오류가 나왔다
... is exceeding the 65535 bytes limit
웹에서는
500이면서 같은 문구가 나온다
이유는
JSP를 java 코드로 변환하는 JSP 컴파일러에 있다!
나는 tomcat을 사용하고 있고
tomcat jsp(jasper) 컴파일러는 최대 65535바이트까지 제한을 두었다고 한다
이 값을 넘어버리니 생기는 오류
(그래서 다른 컴파일러를 사용하게 되면 돌아가는걸 확인할수있다)
그렇다면 해결책은 tomcat의 설정을 변경하는 것이다!
방법1
tomcat의 설정파일인
web.xml파일에 다음 코드를 추가해준다
<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>mappedfile</param-name>
<param-value>false</param-value>
</init-param>
</servlet>
이 코드는 false로 설정하여 용량 제한을 없애는 것이다.
그러면 이상없이 잘나오는 것을 확인할 수 있다.
만약 스프링 부트라면 application.propertes 에 다음 코드를 추가한다
server.servlet.jsp.init-parameters.mappedfile=false
방법 2
include를 이용한다
웹을 하는경우에는 header 파일과 footer 파일을 별도로만들어 include를 사용한다
<%@ include file ="/Inc/Header.jsp" %>
<%@ include file="파일 위치"%>
그렇게 해서 바이트 제한 이하로 갔다면 정상실행가능
실상 방법1보다는 방법 2를 권장
https://stackoverflow.com/questions/5484253/jspservice-is-exceeding-the-65535-bytes-limit
'지식' 카테고리의 다른 글
[github] 깃허브에서 특정 파일만 다운로드 (0) | 2023.04.07 |
---|---|
__pycache__ (자바에서는 .class) (0) | 2023.03.29 |
한글 바이트 byte (0) | 2022.08.12 |
시스템변수, 사용자변수 (0) | 2022.07.11 |
duck typing(덕 타이핑)(.feat 정적,동적) (0) | 2022.07.11 |