title: HTTP Status 500 - java.lang.ClassNotFoundException: org.apache.jsp.index_jsp due to taglib
body: <p>I create a jsp project with idea 2016 and the code of jsf is as following.</p>
  
  <pre><code> &lt;%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %&gt;
  
  &lt;html&gt;
  &lt;head&gt;
    &lt;title&gt;JSP 2.0 Expression Language - Implicit Objects&lt;/title&gt;
  &lt;/head&gt;
  &lt;body&gt;
  &lt;h1&gt;JSP 2.0 Expression Language - Implicit Objects&lt;/h1&gt;
  &lt;hr&gt;
  This example illustrates some of the implicit objects available
  in the Expression Language.  The following implicit objects are
  available (not all illustrated here):
  &lt;ul&gt;
    &lt;li&gt;pageContext - the PageContext object&lt;/li&gt;
    &lt;li&gt;pageScope - a Map that maps page-scoped attribute names to
      their values&lt;/li&gt;
    &lt;li&gt;requestScope - a Map that maps request-scoped attribute names
      to their values&lt;/li&gt;
    &lt;li&gt;sessionScope - a Map that maps session-scoped attribute names
      to their values&lt;/li&gt;
    &lt;li&gt;applicationScope - a Map that maps application-scoped attribute
      names to their values&lt;/li&gt;
    &lt;li&gt;param - a Map that maps parameter names to a single String
      parameter value&lt;/li&gt;
    &lt;li&gt;paramValues - a Map that maps parameter names to a String[] of
      all values for that parameter&lt;/li&gt;
    &lt;li&gt;header - a Map that maps header names to a single String
      header value&lt;/li&gt;
    &lt;li&gt;headerValues - a Map that maps header names to a String[] of
      all values for that header&lt;/li&gt;
    &lt;li&gt;initParam - a Map that maps context initialization parameter
      names to their String parameter value&lt;/li&gt;
    &lt;li&gt;cookie - a Map that maps cookie names to a single Cookie object.&lt;/li&gt;
  &lt;/ul&gt;
  
  &lt;/body&gt;
  &lt;/html&gt;
  </code></pre>
  
  <p>I got following error info.</p>
  
  <pre><code>HTTP Status 500 - java.lang.ClassNotFoundException: org.apache.jsp.index_jsp
  
  type Exception report
  
  message java.lang.ClassNotFoundException: org.apache.jsp.index_jsp
  
  description The server encountered an internal error that prevented it from fulfilling this request.
  
  exception
  
  org.apache.jasper.JasperException: java.lang.ClassNotFoundException: org.apache.jsp.index_jsp
      org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:177)
      org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:376)
      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.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
  
  root cause
  
  java.lang.ClassNotFoundException: org.apache.jsp.index_jsp
      java.net.URLClassLoader$1.run(URLClassLoader.java:372)
      java.net.URLClassLoader$1.run(URLClassLoader.java:361)
      java.security.AccessController.doPrivileged(Native Method)
      java.net.URLClassLoader.findClass(URLClassLoader.java:360)
      org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:132)
      org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:63)
      org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:172)
      org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:376)
      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.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
  
  note The full stack trace of the root cause is available in the Apache Tomcat/7.0.69 logs.
  Apache Tomcat/7.0.69
  </code></pre>
  
  <p>After I remove below line, the exception disappears.</p>
  
  <pre><code>&lt;%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %&gt;
  </code></pre>
  
  <p>I downloaded jstl-1.2.jar and added it into external libraries of my project. The issue is still there. Anybody knows how to handle or debug the issue?</p>