search cancel

No output folder - Error 500 when installing Tomcat patch

book

Article ID: 213239

calendar_today

Updated On:

Products

CA Service Desk Manager CA Service Catalog CA Service Management - Asset Portfolio Management CA Service Management - Service Desk Manager

Issue/Introduction

Getting HTTP Status 500 when installing or upgrading Tomcat

HTTP Status 500 – Internal Server Error


Type Exception Report

Message java.lang.IllegalStateException: No output folder

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception

org.apache.jasper.JasperException: java.lang.IllegalStateException: No output folder
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:619)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:425)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:330)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
	org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:274)
	org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
	org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:320)
	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
	org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:626)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
	org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:274)
	org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
	org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:320)
	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
	org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:626)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

Root Cause

java.lang.IllegalStateException: No output folder
	org.apache.jasper.JspCompilationContext.createOutputDir(JspCompilationContext.java:689)
	org.apache.jasper.JspCompilationContext.getOutputDir(JspCompilationContext.java:204)
	org.apache.jasper.JspCompilationContext.getClassFileName(JspCompilationContext.java:537)
	org.apache.jasper.compiler.Compiler.isOutDated(Compiler.java:464)
	org.apache.jasper.compiler.Compiler.isOutDated(Compiler.java:430)
	org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:590)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:399)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:330)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
	org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:274)
	org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
	org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:320)
	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
	org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:626)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
	org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:274)
	org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
	org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:320)
	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
	org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:626)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

Environment

Release : 17...

Component : CA Asset Portfolio Management, Service Desk Manager, Service Catalog, Etc

Cause

Incorrect permissions set on the drive that Tomcat is installed on 

Resolution

If you save the Apache Tomcat under the C: drive of the Windows System, you will get this error. To fix this error, we need to make sure that the SYSTEM user has full access to the Tomcat folder, so that when Tomcat runs, it can freely create folders and files within its own directory.  Once the install is complete you can revoke full access privileges and it will continue to work.