我使用Spring Boot 1.5.6和Embedded Tomcat 8.5.12获得以下异常:
java.io.FileNotFoundException: JAR entry META-INF/ not found in C:\Users\mushtaq\AppData\Local\Temp\jar_cache3257802877193600650.tmp
at sun.net.www.protocol.jar.JarURLConnection.connect(Unknown Source)
at sun.net.www.protocol.jar.JarURLConnection.getJarFile(Unknown Source)
at com.sun.facelets.util.Classpath.search(Classpath.java:69)
at com.sun.facelets.compiler.TagLibraryConfig.loadImplicit(TagLibraryConfig.java:428)
at com.sun.facelets.compiler.Compiler.initialize(Compiler.java:87)
at com.sun.facelets.compiler.Compiler.compile(Compiler.java:104)
at com.sun.facelets.impl.DefaultFaceletFactory.createFacelet(DefaultFaceletFactory.java:218)
at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:149)
at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:100)
at com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:519)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:569)
at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
此代码适用于Embedded Tomcat 8.5.11。看起来8.5.12中与url分隔符相关的更改已经破坏了。
我曾尝试使用org.apache.tomcat.util.buf.UriUtil.WAR_SEPARATOR,但它无效。