톰캣 java.lang.NullPointerException
톰캣8.0에서 input type='file'로 했을 때 아래와 같은 오류가 발생했다.
오류 내용
HTTP Status 500 - java.lang.NullPointerException
type Exception report
message java.lang.NullPointerException
description The server encountered an internal error that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: java.lang.NullPointerException org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:286) org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462) javax.servlet.http.HttpServlet.service(HttpServlet.java:648) javax.servlet.http.HttpServlet.service(HttpServlet.java:729) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
root cause
java.lang.NullPointerException java.lang.Class.isAssignableFrom(Native Method) org.apache.struts.util.RequestUtils.rationalizeMultipleFileProperty(RequestUtils.java:506) org.apache.struts.util.RequestUtils.populate(RequestUtils.java:459) org.apache.struts.chain.commands.servlet.PopulateActionForm.populate(PopulateActionForm.java:50) org.apache.struts.chain.commands.AbstractPopulateActionForm.execute(AbstractPopulateActionForm.java:60) org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51) org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305) org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283) org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462) javax.servlet.http.HttpServlet.service(HttpServlet.java:648) javax.servlet.http.HttpServlet.service(HttpServlet.java:729) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
note The full stack trace of the root cause is available in the Apache Tomcat/8.0.28 logs.
해결 방법
초기에는 web.xml에 multipart 관련 설정을 하지 않아서 인가, 내가 모르는 설정이 있나 해서 인터넷 서칭을 해가면서 확인했지만, 특별한 원인을 찾지 못했다.
하루 정도 삽질을 하다가 드디어 원인을 찾았다.
원인은 너무 심플했다.
<input name="xml_file" type="file" size="40">로 되어 있던 부분을
<input id="xml_file" type="file" size="40">
.'ETC > TroubleShooting' 카테고리의 다른 글
브라우저에서 자바스크립트(JavaScript)를 활성화해야 합니다(스마트폰 인터넷 설정) (2) | 2016.11.27 |
---|---|
한글이 안쳐질때 해결 방법 (1) | 2016.09.16 |
브라우저 모드 고정 방법 (4) | 2016.06.05 |
JMETER 오류 (keytool -genkeypair -alias :jmeter: -dname "cn=JMeter Proxy (DO NOT TRUST)) (0) | 2016.06.05 |
HTTPS 화면 깨짐 현상 (0) | 2016.06.05 |