Chris,

On Sun, Feb 19, 2023 at 6:25 AM Christopher Schultz <
ch...@christopherschultz.net> wrote:

> Igal,
>
> On 2/18/23 23:19, Igal Sapir wrote:
> > Chris,
> >
> > On Sat, Feb 18, 2023 at 5:57 AM Christopher Schultz <
> > ch...@christopherschultz.net> wrote:
> >
> >> The proposed Apache Tomcat 8.5.86 release is now available for voting.
> >>
> >> The notable changes compared to 8.5.85 are:
> >>
> >> - Add an error report valve that allows redirecting to or proxying from
> >>     an external web server.
> >>
> >> - Add the shared address space specified by RFC 6598 (100.64.0.0/10)
> >>     to the list of trusted proxies for RemoteIPValve/Filter.
> >>
> >> - Log basic information for each configured TLS certificate when
> >>     Tomcat starts.
> >>
> >> - Limit access to examples web application to localhost by default
> >>
> >> Along with lots of other bug fixes and improvements.
> >>
> >> For full details, see the changelog:
> >> https://nightlies.apache.org/tomcat/tomcat-8.5.x/docs/changelog.html
> >>
> >> It can be obtained from:
> >> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.86/
> >>
> >> The Maven staging repo is:
> >> https://repository.apache.org/content/repositories/orgapachetomcat-1419
> >>
> >> The tag is:
> >> https://github.com/apache/tomcat/tree/8.5.86/
> >> 0bf2722f4652674e321a0e22e72dca75d2ea8275
> >>
> >> The proposed 8.5.86 release is:
> >> [ ] Broken - do not release
> >> [X] Stable - go ahead and release as 8.5.86 (stable)
>

+1



> >>
> >
> > This unit test failed:
> > TEST-org.apache.catalina.mapper.TestMapperWebapps.NIO2.txt (output below)
> >
> > FWIW that was with Java 17, but per whichversion.html Tomcat 8.5 should
> > work with Java 7 and later.
> >
> > The error says org.apache.jasper.compiler.JDTCompiler$1.findType Failed
> to
> > load class [java.lang.System] due to
> > org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException ??!
> >
> > I ran `ant test` again with Java 11 and did not get that error.
> >
> > Is that something to be concerned about?
> >
> > Igal
> >
> > Full output of log file:
> >
> > Testsuite: org.apache.catalina.mapper.TestMapperWebapps
> > Tests run: 5, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 4.476 sec
> > ------------- Standard Output ---------------
> > ContextListener: attributeAdded('javax.websocket.server.ServerContainer',
> > 'org.apache.tomcat.websocket.server.WsServerContainer@1b817099')
> > ------------- ---------------- ---------------
> > ------------- Standard Error -----------------
> > 18-Feb-2023 19:36:12.855 INFO [main]
> > org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case
> > [testWelcomeFileStrict]
> > 18-Feb-2023 19:36:13.843 INFO [main]
> > org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-1"]
> > 18-Feb-2023 19:36:13.999 INFO [main]
> > org.apache.catalina.core.StandardService.startInternal Starting service
> > [Tomcat]
> > 18-Feb-2023 19:36:14.000 INFO [main]
> > org.apache.catalina.core.StandardEngine.startInternal Starting Servlet
> > engine: [Apache Tomcat/8.5.77-dev]
> > 18-Feb-2023 19:36:14.244 INFO [localhost-startStop-1]
> > org.apache.catalina.startup.ContextConfig.getDefaultWebXmlFragment No
> > global web.xml found
> > 18-Feb-2023 19:36:14.441 INFO [main]
> > org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-1-41429"]
> > 18-Feb-2023 19:36:15.311 INFO [main]
> > org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-1-41429"]
> > 18-Feb-2023 19:36:15.313 INFO [main]
> > org.apache.catalina.core.StandardService.stopInternal Stopping service
> > [Tomcat]
> > 18-Feb-2023 19:36:15.341 INFO [main]
> > org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-1-41429"]
> > 18-Feb-2023 19:36:15.343 INFO [main]
> > org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-1-41429"]
> > 18-Feb-2023 19:36:15.351 INFO [main]
> > org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case
> > [testContextRoot_Bug53339]
> > 18-Feb-2023 19:36:15.380 INFO [main]
> > org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-2"]
> > 18-Feb-2023 19:36:15.409 INFO [main]
> > org.apache.catalina.core.StandardService.startInternal Starting service
> > [Tomcat]
> > 18-Feb-2023 19:36:15.409 INFO [main]
> > org.apache.catalina.core.StandardEngine.startInternal Starting Servlet
> > engine: [Apache Tomcat/8.5.77-dev]
> > 18-Feb-2023 19:36:15.436 INFO [main]
> > org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-2-37403"]
> > 18-Feb-2023 19:36:15.442 INFO [main]
> > org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-2-37403"]
> > 18-Feb-2023 19:36:15.442 INFO [main]
> > org.apache.catalina.core.StandardService.stopInternal Stopping service
> > [Tomcat]
> > 18-Feb-2023 19:36:15.446 INFO [main]
> > org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-2-37403"]
> > 18-Feb-2023 19:36:15.446 INFO [main]
> > org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-2-37403"]
> > 18-Feb-2023 19:36:15.449 INFO [main]
> > org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case
> > [testContextReload_Bug56658_Bug56882]
> > 18-Feb-2023 19:36:15.453 INFO [main]
> > org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-3"]
> > 18-Feb-2023 19:36:15.464 INFO [main]
> > org.apache.catalina.core.StandardService.startInternal Starting service
> > [Tomcat]
> > 18-Feb-2023 19:36:15.464 INFO [main]
> > org.apache.catalina.core.StandardEngine.startInternal Starting Servlet
> > engine: [Apache Tomcat/8.5.77-dev]
> > 18-Feb-2023 19:36:15.496 INFO [localhost-startStop-1]
> > org.apache.catalina.startup.ContextConfig.getDefaultWebXmlFragment No
> > global web.xml found
> > 18-Feb-2023 19:36:15.724 INFO [localhost-startStop-1]
> > org.apache.catalina.core.ApplicationContext.log ContextListener:
> > contextInitialized()
> > 18-Feb-2023 19:36:15.724 INFO [localhost-startStop-1]
> > org.apache.catalina.core.ApplicationContext.log SessionListener:
> > contextInitialized()
> > 18-Feb-2023 19:36:15.725 INFO [localhost-startStop-1]
> > org.apache.catalina.core.ApplicationContext.log ContextListener:
> > attributeAdded('StockTicker', 'async.Stockticker@5dfbed96')
> > 18-Feb-2023 19:36:15.738 INFO [main]
> > org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-3-35077"]
> > 18-Feb-2023 19:36:15.773 INFO [http-nio2-127.0.0.1-auto-3-exec-2]
> > org.apache.catalina.core.ApplicationContext.log ContextListener:
> > attributeAdded('org.apache.jasper.runtime.JspApplic
> > ationContextImpl',
> > 'org.apache.jasper.runtime.JspApplicationContextImpl@268cc46e')
> > 18-Feb-2023 19:36:15.814 INFO [http-nio2-127.0.0.1-auto-3-exec-2]
> > org.apache.catalina.core.ApplicationContext.log ContextListener:
> > attributeAdded('org.apache.jasper.compiler.ELInterp
> > reter',
> >
> 'org.apache.jasper.compiler.ELInterpreterFactory$DefaultELInterpreter@13d9ae9c
> ')
> >
> > 18-Feb-2023 19:36:15.815 INFO [http-nio2-127.0.0.1-auto-3-exec-2]
> > org.apache.catalina.core.ApplicationContext.log ContextListener:
> > attributeAdded('org.apache.jasper.compiler.StringIn
> > terpreter',
> >
> 'org.apache.jasper.compiler.StringInterpreterFactory$DefaultStringInterpreter@69ef3bb
> ')
> >
> > 18-Feb-2023 19:36:16.171 INFO [http-nio2-127.0.0.1-auto-3-exec-2]
> > org.apache.catalina.core.ApplicationContext.log SessionListener:
> > sessionCreated('301F81A508E00E740EEF43F95DE25470')
> > 18-Feb-2023 19:36:16.333 SEVERE [http-nio2-127.0.0.1-auto-3-exec-2]
> > org.apache.jasper.compiler.JDTCompiler$1.findType Failed to load class
> > [java.lang.System]
> >         org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException
> >                 at
> >
> org.eclipse.jdt.internal.compiler.classfmt.ClassFileReader.<init>(ClassFileReader.java:406)
> >
> >                 at
> > org.apache.jasper.compiler.JDTCompiler$1.findType(JDTCompiler.java:231)
> >                 at
> > org.apache.jasper.compiler.JDTCompiler$1.findType(JDTCompiler.java:207)
> >                 at
> >
> org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:174)
> >
> >                 at
> >
> org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getType(PackageBinding.java:145)
> >
> >                 at
> > org.eclipse.jdt.internal.compiler.lookup.Scope.findType(Scope.java:1926)
> >                 at
> >
> org.eclipse.jdt.internal.compiler.lookup.Scope.getTypeOrPackage(Scope.java:3254)
> >
> >                 at
> >
> org.eclipse.jdt.internal.compiler.lookup.Scope.getBinding(Scope.java:2192)
> >                 at
> >
> org.eclipse.jdt.internal.compiler.ast.SingleNameReference.resolveType(SingleNameReference.java:987)
> >
> >                 at
> >
> org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:636)
> >
> >                 at
> >
> org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:684)
> >
> >                 at
> >
> org.eclipse.jdt.internal.compiler.ast.Expression.resolve(Expression.java:1026)
> >
> >                 at
> > org.eclipse.jdt.internal.compiler.ast.Block.resolveUsing(Block.java:130)
> >                 at
> >
> org.eclipse.jdt.internal.compiler.ast.TryStatement.resolve(TryStatement.java:1073)
> >
> >                 at
> >
> org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:634)
> >
> >                 at
> >
> org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:306)
> >
> >                 at
> >
> org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:544)
> >
> >                 at
> >
> org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1195)
> >
> >                 at
> >
> org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1308)
> >
> >                 at
> >
> org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:593)
> >
> >                 at
> > org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:867)
> >                 at
> >
> org.eclipse.jdt.internal.compiler.Compiler.processCompiledUnits(Compiler.java:550)
> >
> >                 at
> > org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:462)
> >                 at
> > org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:417)
> >                 at
> >
> org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:587)
> >                 at
> > org.apache.jasper.compiler.Compiler.compile(Compiler.java:381)
> >                 at
> > org.apache.jasper.compiler.Compiler.compile(Compiler.java:351)
> >                 at
> > org.apache.jasper.compiler.Compiler.compile(Compiler.java:335)
> >                 at
> >
> org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:597)
> >
> >                 at
> >
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:398)
> >
> >                 at
> > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:383)
> >                 at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:331)
> >                 at
> > javax.servlet.http.HttpServlet.service(HttpServlet.java:582)
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:212)
> >
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:156)
> >
> >                 at
> > org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:181)
> >
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:156)
> >
> >                 at
> >
> org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(HttpHeaderSecurityFilter.java:126)
> >
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:181)
> >
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:156)
> >
> >                 at
> >
> org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:115)
> >
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:181)
> >
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:156)
> >
> >                 at
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167)
> >
> >                 at
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
> >
> >                 at
> >
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:494)
> >
> >                 at
> >
> org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:355)
> >
> >                 at
> >
> org.apache.catalina.valves.RemoteAddrValve.invoke(RemoteAddrValve.java:54)
> >                 at
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
> >
> >                 at
> >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
> >
> >                 at
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
> >
> >                 at
> >
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367)
> >                 at
> >
> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639)
> >                 at
> >
> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
> >
> >                 at
> >
> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:932)
> >
> >                 at
> > org.apache.tomcat.util.net
> .Nio2Endpoint$SocketProcessor.doRun(Nio2Endpoint.java:1717)
> >
> >                 at
> > org.apache.tomcat.util.net
> .SocketProcessorBase.run(SocketProcessorBase.java:49)
> >
> >                 at
> > org.apache.tomcat.util.net
> .AbstractEndpoint.processSocket(AbstractEndpoint.java:1259)
> >
> >                 at
> > org.apache.tomcat.util.net
> .Nio2Endpoint.setSocketOptions(Nio2Endpoint.java:342)
> >
> >                 at
> > org.apache.tomcat.util.net
> .Nio2Endpoint$Nio2Acceptor.completed(Nio2Endpoint.java:482)
> >
> >                 at
> > org.apache.tomcat.util.net
> .Nio2Endpoint$Nio2Acceptor.completed(Nio2Endpoint.java:418)
> >
> >                 at
> > java.base/sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:129)
> >                 at java.base/sun.nio.ch.Invoker$2.run(Invoker.java:221)
> >                 at
> > java.base/sun.nio.ch
> .AsynchronousChannelGroupImpl$1.run(AsynchronousChannelGroupImpl.java:113)
> >
> >                 at
> >
> org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
> >
> >                 at
> >
> org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
> >
> >                 at
> >
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
> >
> >                 at java.base/java.lang.Thread.run(Thread.java:833)
> > 18-Feb-2023 19:36:16.347 SEVERE [http-nio2-127.0.0.1-auto-3-exec-2]
> > org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service()
> for
> > servlet [jsp] in context with path [/ex
> > amples] threw exception [Unable to compile class for JSP:
> >
> > An error occurred at line: [17] in the jsp file: [/jsp/include/foo.jsp]
> > System cannot be resolved
> > 14:   See the License for the specific language governing permissions and
> > 15:   limitations under the License.
> > 16:
> > 17: --%><%= System.currentTimeMillis() %>
> >
> >
> > Stacktrace:] with root cause
> >         org.apache.jasper.JasperException: Unable to compile class for
> JSP:
> >
> > An error occurred at line: [17] in the jsp file: [/jsp/include/foo.jsp]
> > System cannot be resolved
> > 14:   See the License for the specific language governing permissions and
> > 15:   limitations under the License.
> > 16:
> > 17: --%><%= System.currentTimeMillis() %>
> >
> >
> > Stacktrace:
> >                 at
> >
> org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:102)
> >
> >                 at
> >
> org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:213)
> >
> >                 at
> >
> org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:600)
> >                 at
> > org.apache.jasper.compiler.Compiler.compile(Compiler.java:381)
> >                 at
> > org.apache.jasper.compiler.Compiler.compile(Compiler.java:351)
> >                 at
> > org.apache.jasper.compiler.Compiler.compile(Compiler.java:335)
> >                 at
> >
> org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:597)
> >
> >                 at
> >
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:398)
> >
> >                 at
> > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:383)
> >                 at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:331)
> >                 at
> > javax.servlet.http.HttpServlet.service(HttpServlet.java:582)
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:212)
> >
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:156)
> >
> >                 at
> > org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:181)
> >
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:156)
> >
> >                 at
> >
> org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(HttpHeaderSecurityFilter.java:126)
> >
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:181)
> >
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:156)
> >
> >                 at
> >
> org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:115)
> >
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:181)
> >
> >                 at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:156)
> >
> >                 at
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167)
> >
> >                 at
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
> >
> >                 at
> >
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:494)
> >
> >                 at
> >
> org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:355)
> >
> >                 at
> >
> org.apache.catalina.valves.RemoteAddrValve.invoke(RemoteAddrValve.java:54)
> >                 at
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
> >
> >                 at
> >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
> >
> >                 at
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
> >
> >                 at
> >
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367)
> >                 at
> >
> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639)
> >                 at
> >
> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
> >
> >                 at
> >
> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:932)
> >
> >                 at
> > org.apache.tomcat.util.net
> .Nio2Endpoint$SocketProcessor.doRun(Nio2Endpoint.java:1717)
> >
> >                 at
> > org.apache.tomcat.util.net
> .SocketProcessorBase.run(SocketProcessorBase.java:49)
> >
> >                 at
> > org.apache.tomcat.util.net
> .AbstractEndpoint.processSocket(AbstractEndpoint.java:1259)
> >
> >                 at
> > org.apache.tomcat.util.net
> .Nio2Endpoint.setSocketOptions(Nio2Endpoint.java:342)
> >
> >                 at
> > org.apache.tomcat.util.net
> .Nio2Endpoint$Nio2Acceptor.completed(Nio2Endpoint.java:482)
> >
> >                 at
> > org.apache.tomcat.util.net
> .Nio2Endpoint$Nio2Acceptor.completed(Nio2Endpoint.java:418)
> >
> >                 at
> > java.base/sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:129)
> >                 at java.base/sun.nio.ch.Invoker$2.run(Invoker.java:221)
> >                 at
> > java.base/sun.nio.ch
> .AsynchronousChannelGroupImpl$1.run(AsynchronousChannelGroupImpl.java:113)
> >
> >                 at
> >
> org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
> >
> >                 at
> >
> org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
> >
> >                 at
> >
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
> >
> >                 at java.base/java.lang.Thread.run(Thread.java:833)
> > 18-Feb-2023 19:36:16.352 INFO [main]
> > org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-3-35077"]
> > 18-Feb-2023 19:36:16.353 INFO [main]
> > org.apache.catalina.core.StandardService.stopInternal Stopping service
> > [Tomcat]
> > 18-Feb-2023 19:36:16.359 INFO [localhost-startStop-1]
> > org.apache.catalina.core.ApplicationContext.log SessionListener:
> > contextDestroyed()
> > 18-Feb-2023 19:36:16.359 INFO [localhost-startStop-1]
> > org.apache.catalina.core.ApplicationContext.log ContextListener:
> > contextDestroyed()
> > 18-Feb-2023 19:36:16.364 INFO [main]
> > org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-3-35077"]
> > 18-Feb-2023 19:36:16.364 INFO [main]
> > org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-3-35077"]
> > 18-Feb-2023 19:36:16.373 INFO [main]
> > org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case
> > [testRedirect]
> > 18-Feb-2023 19:36:16.376 INFO [main]
> > org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-4"]
> > 18-Feb-2023 19:36:16.413 INFO [main]
> > org.apache.catalina.core.StandardService.startInternal Starting service
> > [Tomcat]
> > 18-Feb-2023 19:36:16.414 INFO [main]
> > org.apache.catalina.core.StandardEngine.startInternal Starting Servlet
> > engine: [Apache Tomcat/8.5.77-dev]
> > 18-Feb-2023 19:36:16.445 INFO [localhost-startStop-1]
> > org.apache.catalina.startup.ContextConfig.getDefaultWebXmlFragment No
> > global web.xml found
> > 18-Feb-2023 19:36:16.467 WARNING [localhost-startStop-1]
> > org.apache.catalina.startup.ContextConfig.validateSecurityRoles Security
> > role name [foo] used in an <auth-constraint> without
> > being defined in a <security-role>
> > 18-Feb-2023 19:36:16.695 INFO [localhost-startStop-1]
> > org.apache.catalina.core.ApplicationContext.log ContextListener:
> > contextInitialized()
> > 18-Feb-2023 19:36:16.695 INFO [localhost-startStop-1]
> > org.apache.catalina.core.ApplicationContext.log SessionListener:
> > contextInitialized()
> > 18-Feb-2023 19:36:16.696 INFO [localhost-startStop-1]
> > org.apache.catalina.core.ApplicationContext.log ContextListener:
> > attributeAdded('StockTicker', 'async.Stockticker@7f748a59')
> > 18-Feb-2023 19:36:16.705 INFO [main]
> > org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-4-44709"]
> > 18-Feb-2023 19:36:16.738 INFO [main]
> > org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-4-44709"]
> > 18-Feb-2023 19:36:16.738 INFO [main]
> > org.apache.catalina.core.StandardService.stopInternal Stopping service
> > [Tomcat]
> > 18-Feb-2023 19:36:16.745 INFO [localhost-startStop-1]
> > org.apache.catalina.core.ApplicationContext.log SessionListener:
> > contextDestroyed()
> > 18-Feb-2023 19:36:16.746 INFO [localhost-startStop-1]
> > org.apache.catalina.core.ApplicationContext.log ContextListener:
> > contextDestroyed()
> > 18-Feb-2023 19:36:16.749 INFO [main]
> > org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-4-44709"]
> > 18-Feb-2023 19:36:16.750 INFO [main]
> > org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-4-44709"]
> > 18-Feb-2023 19:36:16.754 INFO [main]
> > org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case
> > [testWelcomeFileNotStrict]
> > 18-Feb-2023 19:36:16.755 INFO [main]
> > org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-5"]
> > 18-Feb-2023 19:36:16.775 INFO [main]
> > org.apache.catalina.core.StandardService.startInternal Starting service
> > [Tomcat]
> > 18-Feb-2023 19:36:16.775 INFO [main]
> > org.apache.catalina.core.StandardEngine.startInternal Starting Servlet
> > engine: [Apache Tomcat/8.5.77-dev]
> > 18-Feb-2023 19:36:16.786 INFO [localhost-startStop-1]
> > org.apache.catalina.startup.ContextConfig.getDefaultWebXmlFragment No
> > global web.xml found
> > 18-Feb-2023 19:36:16.854 INFO [main]
> > org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-5-41955"]
> > 18-Feb-2023 19:36:16.946 INFO [main]
> > org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-5-41955"]
> > 18-Feb-2023 19:36:16.948 INFO [main]
> > org.apache.catalina.core.StandardService.stopInternal Stopping service
> > [Tomcat]
> > 18-Feb-2023 19:36:16.953 INFO [main]
> > org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-5-41955"]
> > 18-Feb-2023 19:36:16.953 INFO [main]
> > org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler
> > ["http-nio2-127.0.0.1-auto-5-41955"]
> > ------------- ---------------- ---------------
> >
> > Testcase: testWelcomeFileStrict took 2.758 sec
> > Testcase: testContextRoot_Bug53339 took 0.097 sec
> > Testcase: testContextReload_Bug56658_Bug56882 took 0.922 sec
> >         FAILED
> > <!doctype html><html lang="en"><head><title>HTTP Status 500 â Internal
> > Server Error</title><style type="text/css">body
> > {font-family:Tahoma,Arial,sans-serif;} h1, h2, h3, b {color:whi
> > te;background-color:#525D76;} h1 {font-size:22px;} h2 {font-size:16px;}
> h3
> > {font-size:14px;} p {font-size:12px;} a {color:black;} .line
> > {height:1px;background-color:#525D76;border:no
> > ne;}</style></head><body><h1>HTTP Status 500 â Internal Server
> > Error</h1><hr class="line" /><p><b>Type</b> Exception
> > Report</p><p><b>Message</b> Unable to compile class for JSP: </p>
> > <p><b>Description</b> The server encountered an unexpected condition that
> > prevented it from fulfilling the
> >
> request.</p><p><b>Exception</b></p><pre>org.apache.jasper.JasperException:
> > Unable to compile class for JSP:
> >
> > An error occurred at line: [17] in the jsp file:
> > [&#47;jsp&#47;include&#47;foo.jsp]
> > System cannot be resolved
> > 14:   See the License for the specific language governing permissions and
> > 15:   limitations under the License.
> > 16:
> > 17: --%&gt;&lt;%= System.currentTimeMillis() %&gt;
> >
> >
> > Stacktrace:
> >
>  
> org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:102)
> >
> >
>  
> org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:213)
> >
> >
>  org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:600)
> >
> >         org.apache.jasper.compiler.Compiler.compile(Compiler.java:381)
> >         org.apache.jasper.compiler.Compiler.compile(Compiler.java:351)
> >         org.apache.jasper.compiler.Compiler.compile(Compiler.java:335)
> >
>  
> org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:597)
> >
> >
>  
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:398)
> >
> >
>  org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:383)
> >
> >         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:331)
> >         javax.servlet.http.HttpServlet.service(HttpServlet.java:582)
> >
>  org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
> >
> >
>  
> org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(HttpHeaderSecurityFilter.java:126)
> >
> >
>  
> org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:115)
> >
> > </pre><p><b>Note</b> The full stack trace of the root cause is available
> in
> > the server logs.</p><hr class="line" /><h3>Apache
> > Tomcat/8.5.77-dev</h3></body></html>
> > junit.framework.AssertionFailedError: <!doctype html><html
> > lang="en"><head><title>HTTP Status 500 â Internal Server
> > Error</title><style type="text/css">body {font-family:Tahoma,Arial
> > ,sans-serif;} h1, h2, h3, b {color:white;background-color:#525D76;} h1
> > {font-size:22px;} h2 {font-size:16px;} h3 {font-size:14px;} p
> > {font-size:12px;} a {color:black;} .line {height:
> > 1px;background-color:#525D76;border:none;}</style></head><body><h1>HTTP
> > Status 500 â Internal Server Error</h1><hr class="line" /><p><b>Type</b>
> > Exception Report</p><p><b>Message</b>
> > Unable to compile class for JSP: </p><p><b>Description</b> The server
> > encountered an unexpected condition that prevented it from fulfilling the
> > request.</p><p><b>Exception</b></p><p
> > re>org.apache.jasper.JasperException: Unable to compile class for JSP:
> >
> > An error occurred at line: [17] in the jsp file:
> > [&#47;jsp&#47;include&#47;foo.jsp]
> > System cannot be resolved
> > 14:   See the License for the specific language governing permissions and
> > 15:   limitations under the License.
> > 16:
> > 17: --%&gt;&lt;%= System.currentTimeMillis() %&gt;
> >
> >
> > Stacktrace:
> >
>  
> org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:102)
> >
> >
>  
> org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:213)
> >
> >
>  org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:600)
> >
> >         org.apache.jasper.compiler.Compiler.compile(Compiler.java:381)
> >         org.apache.jasper.compiler.Compiler.compile(Compiler.java:351)
> >         org.apache.jasper.compiler.Compiler.compile(Compiler.java:335)
> >
>  
> org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:597)
> >
> >
>  
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:398)
> >
> >
>  org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:383)
> >
> >         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:331)
> >         javax.servlet.http.HttpServlet.service(HttpServlet.java:582)
> >
>  org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
> >
> >
>  
> org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(HttpHeaderSecurityFilter.java:126)
> >
> >
>  
> org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:115)
> >
> > </pre><p><b>Note</b> The full stack trace of the root cause is available
> in
> > the server logs.</p><hr class="line" /><h3>Apache
> > Tomcat/8.5.77-dev</h3></body></html>
> >         at
> >
> org.apache.catalina.mapper.TestMapperWebapps.testContextReload_Bug56658_Bug56882(TestMapperWebapps.java:118)
> >
> >         at
> > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
> > Method)
> >         at
> >
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
> >
> >         at
> >
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> >
> >
> > Testcase: testRedirect took 0.38 sec
> > Testcase: testWelcomeFileNotStrict took 0.204 sec
>
> My guess is that the JDT compiler bundled with 8.5.x does not support a
> Java 17 class format. Tomcat 8.5.86 ships with the JDT compile 4.6.3
> which is just about to turn 5 years old. You could try replacing it with
> a modern JDT version like 4.26 and see if that improves things for you.
>
> -chris
>

Your guess is absolutely correct.  Using JDT 4.20 (the version that ships
with Tomcat 9) the unit test passes.

I also found an email thread on the topic in the archives from some time
ago [1].

Thank you,

Igal

[1] https://www.mail-archive.com/dev@tomcat.apache.org/msg155697.html



>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>
>

Reply via email to