JSP 2 tag files “/WEB-INF/tags” not found
<p>Yes, this question is very similar to <a href="https://stackoverflow.com/questions/20586026/jsp-2-tag-files-web-inf-tags-not-found">this one</a> but with the huge difference that I am working with a TLD file rather than a taglib-to-folder declaration.</p>

<p>Okay, my setup is the following: I am migrating a pure-Java tag library to almost-JSP (some tags will still survive their Java form). I had a TLD defined under my <code>classpath:META-INF</code> folder. Some tags are defined as classes, while others are now defined as JSP 2 tag files under <code>/WEB-INF/tags</code>. Example given:</p>

<pre><code>&lt;tag-file&gt;
    &lt;name&gt;navbar&lt;/name&gt;
    &lt;path&gt;/WEB-INF/tags/navbar.tag&lt;/path&gt;
    &lt;display-name&gt;Navbar&lt;/display-name&gt;
&lt;/tag-file&gt;
</code></pre>

<p>This all works great under Eclipse, though I had to manually set up <code>Web Deployment Assembly</code> from <code>src/META-INF</code> to <code>WEB-INF</code>, otherwise the TLD file won't be recognized by Tomcat.</p>

<p>After happily debugging the code I have tried to create a WAR version of my application to be deployed to SIT. Despite the presence of the <code>tags</code> directory under <code>WEB-INF</code> along with the JSP 2 tag files, I am still unable to run the application.</p>

<p>And the error iiiiiiiiiiiiis:</p>

<pre><code>org.apache.jasper.JasperException: /login.jsp (line: 3, column: 0) File [/WEB-INF/tags/navbar.tag] not found
    org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:41)
    org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:275)
    org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:91)
    org.apache.jasper.compiler.Parser.processIncludeDirective(Parser.java:335)
    org.apache.jasper.compiler.Parser.parseIncludeDirective(Parser.java:368)
    org.apache.jasper.compiler.Parser.parseDirective(Parser.java:471)
    org.apache.jasper.compiler.Parser.parseElements(Parser.java:1435)
    org.apache.jasper.compiler.Parser.parse(Parser.java:139)
    org.apache.jasper.compiler.ParserController.doParse(ParserController.java:227)
    org.apache.jasper.compiler.ParserController.parse(ParserController.java:100)
    org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:199)
    org.apache.jasper.compiler.Compiler.__compile(Compiler.java:356)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:336)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:323)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:585)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:363)
    org.apache.jasper.servlet.JspServlet._serviceJspFile(JspServlet.java:396)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
</code></pre>

<p>The TLD is declared as usual</p>

<pre><code>&lt;%@ taglib prefix="example" uri="http://www.example.org/example.tld"%&gt;
</code></pre>

<p>How can I fix this?</p>