티뮤

65535 bytes limit jsp 용량 초과 해결 방법 본문

IT/개발

65535 bytes limit jsp 용량 초과 해결 방법

티뮤 2021. 1. 4. 14:03
728x90

에러 내용

HTTP Status 500 - Unable to compile class for JSP:

--------------------------------------------------------------------------------

type Exception report

message Unable to compile class for JSP: 

description The server encountered an internal error that prevented it from fulfilling this request.

exception 

org.apache.jasper.JasperException: Unable to compile class for JSP: 

An error occurred at line: [5,937] in the generated java file: [jsp 파일명_jsp.java]

The code of method _jspService(HttpServletRequest, HttpServletResponse) is exceeding the 65535 bytes limit

Stacktrace:

org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:103)

org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:366)

org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:485)

org.apache.jasper.compiler.Compiler.compile(Compiler.java:379)

org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)

org.apache.jasper.compiler.Compiler.compile(Compiler.java:341)

org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:657)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)

javax.servlet.http.HttpServlet.service(HttpServlet.java:731)

org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:236)

org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:257)

org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1183)

org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:902)

org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:807)

org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)

org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:501)

javax.servlet.http.HttpServlet.service(HttpServlet.java:624)

javax.servlet.http.HttpServlet.service(HttpServlet.java:731)

com.pionnet.servlet.BaseFilter.doFilter(BaseFilter.java:26)

com.mall.frm.servlet.CommonFilter.doFilter(CommonFilter.java:15)

 

note The full stack trace of the root cause is available in the Apache Tomcat/7.0.61 logs.

------------------------------------------------------------------------------------------------------------------------

에러 원인

jsp 컴파일 중 jsp 파일 용량이 초과해서 발생하는 에러

해결 방법

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>

 

위 코드를 추가해도 에러가 동일하게 발생하는 경우가 있다

그럴 경우에 include 되어 있는 페이지가 있다면 동적으로 호출하는 방법으로 해결할 수 있다.

//정적 삽입
//jsp 파일이 자바파일로 바뀔때 자바 문서에 삽입되어 컴파일됨
<%@ include file="파일 위치"%>

//동적 삽입
//jsp 파일이 컴파일 된 후 실행중에 삽입됨
<%@ include page="파일 위치"%>
728x90
Comments