2013/12/12 Mark Thomas <ma...@apache.org>
>
> The proposed Apache Tomcat 8.0.0 release candidate 7 is now available
> for voting.
>
> Given this is a release candidate I am working on the basis that it is
> equivalent to an alpha. The main changes since RC5 are:
> - Better handling of generic types in the WebSocket 1.0 implementation
> - Refactor resource handling for the class loader
> - Add Cobertura support to the unit tests
> - Remove anti-Jar locking feature and replace it with open stream
>   tracking
> - Update to Commons Pool 2.0 release
> - Complete refactoring of TLD handling including caching of parsed TLDs
> - More consistent handling of XML validation options
> - Much more detailed visibility of DBCP connections pools in JMX
> - Better organisation of JMX beans in the default JConsole view
> - Numerous bug fixes
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.0-RC7/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-047/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_8_0_0_RC6/
>
> The proposed 8.0.0-RC7 release is:
> [ ] Broken - do not release
> [ ] Alpha - go ahead and release as 8.0.0-RC7 alpha
>

I found another issue:
If a tag file is placed in a jar file in WEB-INF/lib and then is used, the
following exception appears:

org.apache.jasper.JasperException: Illegal tag file path:
/META-INF/tags/my.tag, must start with "/WEB-INF/tags" or "/META-INF/tags"
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:56)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:278)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:76)
---->
org.apache.jasper.compiler.TagLibraryInfoImpl.createTagFileInfo(TagLibraryInfoImpl.java:287)
  <----
org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:171)
org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:411)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:469)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1455)
org.apache.jasper.compiler.Parser.parse(Parser.java:139)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:229)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:100)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:200)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:375)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:355)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:342)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:557)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)


The change in the code is introduced with r1541960

Besides that the message is wrong because we check only for WEB-INF/tags
[1], what should be done in addition?

[1]
org.apache.jasper.compiler.TagLibraryInfoImpl.createTagFileInfo(TagFileXml,
Jar)

286        } else if (!path.startsWith("/WEB-INF/tags")) {
287            err.jspError("jsp.error.tagfile.illegalPath", path);
288        }

Reply via email to