Testsuite: org.apache.tomcat.websocket.TestWsRemoteEndpoint Tests run: 8, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 3.374 sec ------------- Standard Error ----------------- 14-Feb-2024 01:53:21.383 INFO [main] org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case [testWriterZeroLengthAnnotation] 14-Feb-2024 01:53:22.874 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio2-127.0.0.1-auto-1"] 14-Feb-2024 01:53:22.938 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Tomcat] 14-Feb-2024 01:53:22.938 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/10.1.19-dev] 14-Feb-2024 01:53:23.108 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio2-127.0.0.1-auto-1-41345"] 14-Feb-2024 01:53:23.319 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["http-nio2-127.0.0.1-auto-1-41345"] 14-Feb-2024 01:53:23.323 INFO [main] org.apache.catalina.core.StandardService.stopInternal Stopping service [Tomcat] 14-Feb-2024 01:53:23.371 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-nio2-127.0.0.1-auto-1-41345"] 14-Feb-2024 01:53:23.373 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["http-nio2-127.0.0.1-auto-1-41345"] 14-Feb-2024 01:53:23.391 INFO [main] org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case [testWriterAnnotation] 14-Feb-2024 01:53:23.394 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio2-127.0.0.1-auto-2"] 14-Feb-2024 01:53:23.461 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Tomcat] 14-Feb-2024 01:53:23.461 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/10.1.19-dev] 14-Feb-2024 01:53:23.467 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio2-127.0.0.1-auto-2-41109"] 14-Feb-2024 01:53:23.539 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["http-nio2-127.0.0.1-auto-2-41109"] 14-Feb-2024 01:53:23.540 INFO [main] org.apache.catalina.core.StandardService.stopInternal Stopping service [Tomcat] 14-Feb-2024 01:53:23.553 WARNING [main] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [ROOT] appears to have started a thread named [http-nio2-127.0.0.1-auto-2-exec-3] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: app//org.apache.tomcat.websocket.WsRemoteEndpointImplBase.endMessage(WsRemoteEndpointImplBase.java:438) app//org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:333) app//org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:250) app//org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendPartialString(WsRemoteEndpointImplBase.java:223) app//org.apache.tomcat.websocket.WsRemoteEndpointBasic.sendText(WsRemoteEndpointBasic.java:48) app//org.apache.tomcat.websocket.TesterEchoServer$Async.echoTextMessage(TesterEchoServer.java:67) java.base@17.0.7/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) java.base@17.0.7/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) java.base@17.0.7/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.base@17.0.7/java.lang.reflect.Method.invoke(Method.java:568) app//org.apache.tomcat.websocket.pojo.PojoMessageHandlerPartialBase.onMessage(PojoMessageHandlerPartialBase.java:67) app//org.apache.tomcat.websocket.WsFrameBase.sendMessageText(WsFrameBase.java:387) app//org.apache.tomcat.websocket.server.WsFrameServer.sendMessageText(WsFrameServer.java:130) app//org.apache.tomcat.websocket.WsFrameBase.processDataText(WsFrameBase.java:484) app//org.apache.tomcat.websocket.WsFrameBase.processData(WsFrameBase.java:284) app//org.apache.tomcat.websocket.WsFrameBase.processInputBuffer(WsFrameBase.java:130) app//org.apache.tomcat.websocket.server.WsFrameServer.onDataAvailable(WsFrameServer.java:85) app//org.apache.tomcat.websocket.server.WsFrameServer.doOnDataAvailable(WsFrameServer.java:184) app//org.apache.tomcat.websocket.server.WsFrameServer.notifyDataAvailable(WsFrameServer.java:164) app//org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.upgradeDispatch(WsHttpUpgradeHandler.java:152) app//org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:60) app//org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:57) app//org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) app//org.apache.tomcat.util.net.Nio2Endpoint$SocketProcessor.doRun(Nio2Endpoint.java:1683) app//org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) app//org.apache.tomcat.util.net.AbstractEndpoint.processSocket(AbstractEndpoint.java:1244) app//org.apache.tomcat.util.net.Nio2Endpoint$Nio2SocketWrapper$2.completed(Nio2Endpoint.java:632) app//org.apache.tomcat.util.net.Nio2Endpoint$Nio2SocketWrapper$2.completed(Nio2Endpoint.java:608) java.base@17.0.7/sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:129) java.base@17.0.7/sun.nio.ch.Invoker$2.run(Invoker.java:221) java.base@17.0.7/sun.nio.ch.AsynchronousChannelGroupImpl$1.run(AsynchronousChannelGroupImpl.java:113) app//org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) app//org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) app//org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) java.base@17.0.7/java.lang.Thread.run(Thread.java:833) 14-Feb-2024 01:53:23.556 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-nio2-127.0.0.1-auto-2-41109"] 14-Feb-2024 01:53:23.558 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["http-nio2-127.0.0.1-auto-2-41109"] 14-Feb-2024 01:53:23.563 INFO [main] org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case [testWriterProgrammatic] 14-Feb-2024 01:53:23.577 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio2-127.0.0.1-auto-3"] 14-Feb-2024 01:53:23.633 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Tomcat] 14-Feb-2024 01:53:23.633 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/10.1.19-dev] 14-Feb-2024 01:53:23.645 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio2-127.0.0.1-auto-3-43097"] 14-Feb-2024 01:53:23.710 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["http-nio2-127.0.0.1-auto-3-43097"] 14-Feb-2024 01:53:23.711 INFO [main] org.apache.catalina.core.StandardService.stopInternal Stopping service [Tomcat] 14-Feb-2024 01:53:23.720 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-nio2-127.0.0.1-auto-3-43097"] 14-Feb-2024 01:53:23.721 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["http-nio2-127.0.0.1-auto-3-43097"] 14-Feb-2024 01:53:23.724 INFO [main] org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case [testStreamProgrammatic] 14-Feb-2024 01:53:23.726 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio2-127.0.0.1-auto-4"] 14-Feb-2024 01:53:23.786 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Tomcat] 14-Feb-2024 01:53:23.787 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/10.1.19-dev] 14-Feb-2024 01:53:23.811 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio2-127.0.0.1-auto-4-35435"] 14-Feb-2024 01:53:23.839 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["http-nio2-127.0.0.1-auto-4-35435"] 14-Feb-2024 01:53:23.842 INFO [main] org.apache.catalina.core.StandardService.stopInternal Stopping service [Tomcat] 14-Feb-2024 01:53:23.850 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-nio2-127.0.0.1-auto-4-35435"] 14-Feb-2024 01:53:23.852 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["http-nio2-127.0.0.1-auto-4-35435"] 14-Feb-2024 01:53:23.859 INFO [main] org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case [testWriterErrorProgrammatic] 14-Feb-2024 01:53:23.866 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio2-127.0.0.1-auto-5"] 14-Feb-2024 01:53:23.871 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Tomcat] 14-Feb-2024 01:53:23.871 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/10.1.19-dev] 14-Feb-2024 01:53:23.876 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio2-127.0.0.1-auto-5-35479"] 14-Feb-2024 01:53:23.882 SEVERE [http-nio2-127.0.0.1-auto-5-exec-2] org.apache.tomcat.websocket.pojo.PojoEndpointBase.onError No error handling configured for [org.apache.tomcat.websocket.TesterEchoServer$WriterError] and the following error occurred java.lang.RuntimeException at org.apache.tomcat.websocket.TesterEchoServer$WriterError.echoTextMessage(TesterEchoServer.java:200) 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) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.apache.tomcat.websocket.pojo.PojoMessageHandlerWholeBase.onMessage(PojoMessageHandlerWholeBase.java:102) at org.apache.tomcat.websocket.WsFrameBase.sendMessageText(WsFrameBase.java:390) at org.apache.tomcat.websocket.server.WsFrameServer.sendMessageText(WsFrameServer.java:130) at org.apache.tomcat.websocket.WsFrameBase.processDataText(WsFrameBase.java:484) at org.apache.tomcat.websocket.WsFrameBase.processData(WsFrameBase.java:284) at org.apache.tomcat.websocket.WsFrameBase.processInputBuffer(WsFrameBase.java:130) at org.apache.tomcat.websocket.server.WsFrameServer.onDataAvailable(WsFrameServer.java:85) at org.apache.tomcat.websocket.server.WsFrameServer.doOnDataAvailable(WsFrameServer.java:184) at org.apache.tomcat.websocket.server.WsFrameServer.notifyDataAvailable(WsFrameServer.java:164) at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.upgradeDispatch(WsHttpUpgradeHandler.java:152) at org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:60) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:57) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) at org.apache.tomcat.util.net.Nio2Endpoint$SocketProcessor.doRun(Nio2Endpoint.java:1683) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.net.AbstractEndpoint.processSocket(AbstractEndpoint.java:1244) at org.apache.tomcat.util.net.Nio2Endpoint.setSocketOptions(Nio2Endpoint.java:328) at org.apache.tomcat.util.net.Nio2Endpoint$Nio2Acceptor.completed(Nio2Endpoint.java:468) at org.apache.tomcat.util.net.Nio2Endpoint$Nio2Acceptor.completed(Nio2Endpoint.java:404) 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:63) at java.base/java.lang.Thread.run(Thread.java:833) 14-Feb-2024 01:53:23.886 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["http-nio2-127.0.0.1-auto-5-35479"] 14-Feb-2024 01:53:23.886 INFO [main] org.apache.catalina.core.StandardService.stopInternal Stopping service [Tomcat] 14-Feb-2024 01:53:23.889 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-nio2-127.0.0.1-auto-5-35479"] 14-Feb-2024 01:53:23.890 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["http-nio2-127.0.0.1-auto-5-35479"] 14-Feb-2024 01:53:23.893 INFO [main] org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case [testWriterZeroLengthProgrammatic] 14-Feb-2024 01:53:23.895 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio2-127.0.0.1-auto-6"] 14-Feb-2024 01:53:23.902 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Tomcat] 14-Feb-2024 01:53:23.902 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/10.1.19-dev] 14-Feb-2024 01:53:23.907 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio2-127.0.0.1-auto-6-34037"] 14-Feb-2024 01:53:23.913 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["http-nio2-127.0.0.1-auto-6-34037"] 14-Feb-2024 01:53:23.915 INFO [main] org.apache.catalina.core.StandardService.stopInternal Stopping service [Tomcat] 14-Feb-2024 01:53:23.918 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-nio2-127.0.0.1-auto-6-34037"] 14-Feb-2024 01:53:23.919 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["http-nio2-127.0.0.1-auto-6-34037"] 14-Feb-2024 01:53:23.924 INFO [main] org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case [testStreamAnnotation] 14-Feb-2024 01:53:23.926 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio2-127.0.0.1-auto-7"] 14-Feb-2024 01:53:23.930 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Tomcat] 14-Feb-2024 01:53:23.930 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/10.1.19-dev] 14-Feb-2024 01:53:23.937 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio2-127.0.0.1-auto-7-46443"] 14-Feb-2024 01:53:23.949 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["http-nio2-127.0.0.1-auto-7-46443"] 14-Feb-2024 01:53:23.950 INFO [main] org.apache.catalina.core.StandardService.stopInternal Stopping service [Tomcat] 14-Feb-2024 01:53:23.953 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-nio2-127.0.0.1-auto-7-46443"] 14-Feb-2024 01:53:23.954 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["http-nio2-127.0.0.1-auto-7-46443"] 14-Feb-2024 01:53:23.957 INFO [main] org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case [testWriterErrorAnnotation] 14-Feb-2024 01:53:23.959 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio2-127.0.0.1-auto-8"] 14-Feb-2024 01:53:23.967 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Tomcat] 14-Feb-2024 01:53:23.967 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/10.1.19-dev] 14-Feb-2024 01:53:23.976 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio2-127.0.0.1-auto-8-36777"] 14-Feb-2024 01:53:23.982 SEVERE [http-nio2-127.0.0.1-auto-8-exec-4] org.apache.tomcat.websocket.pojo.PojoEndpointBase.onError No error handling configured for [org.apache.tomcat.websocket.TesterEchoServer$WriterError] and the following error occurred java.lang.RuntimeException at org.apache.tomcat.websocket.TesterEchoServer$WriterError.echoTextMessage(TesterEchoServer.java:200) 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) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.apache.tomcat.websocket.pojo.PojoMessageHandlerWholeBase.onMessage(PojoMessageHandlerWholeBase.java:102) at org.apache.tomcat.websocket.WsFrameBase.sendMessageText(WsFrameBase.java:390) at org.apache.tomcat.websocket.server.WsFrameServer.sendMessageText(WsFrameServer.java:130) at org.apache.tomcat.websocket.WsFrameBase.processDataText(WsFrameBase.java:484) at org.apache.tomcat.websocket.WsFrameBase.processData(WsFrameBase.java:284) at org.apache.tomcat.websocket.WsFrameBase.processInputBuffer(WsFrameBase.java:130) at org.apache.tomcat.websocket.server.WsFrameServer.onDataAvailable(WsFrameServer.java:85) at org.apache.tomcat.websocket.server.WsFrameServer.doOnDataAvailable(WsFrameServer.java:184) at org.apache.tomcat.websocket.server.WsFrameServer.notifyDataAvailable(WsFrameServer.java:164) at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.upgradeDispatch(WsHttpUpgradeHandler.java:152) at org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:60) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:57) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) at org.apache.tomcat.util.net.Nio2Endpoint$SocketProcessor.doRun(Nio2Endpoint.java:1683) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.net.AbstractEndpoint.processSocket(AbstractEndpoint.java:1244) at org.apache.tomcat.util.net.Nio2Endpoint$Nio2SocketWrapper$2.completed(Nio2Endpoint.java:632) at org.apache.tomcat.util.net.Nio2Endpoint$Nio2SocketWrapper$2.completed(Nio2Endpoint.java:608) 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:63) at java.base/java.lang.Thread.run(Thread.java:833) 14-Feb-2024 01:53:23.984 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["http-nio2-127.0.0.1-auto-8-36777"] 14-Feb-2024 01:53:23.987 INFO [main] org.apache.catalina.core.StandardService.stopInternal Stopping service [Tomcat] 14-Feb-2024 01:53:23.989 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-nio2-127.0.0.1-auto-8-36777"] 14-Feb-2024 01:53:23.990 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["http-nio2-127.0.0.1-auto-8-36777"] ------------- ---------------- --------------- Testcase: testWriterZeroLengthAnnotation took 2.556 sec Testcase: testWriterAnnotation took 0.173 sec Testcase: testWriterProgrammatic took 0.16 sec Testcase: testStreamProgrammatic took 0.133 sec Testcase: testWriterErrorProgrammatic took 0.035 sec Testcase: testWriterZeroLengthProgrammatic took 0.028 sec Testcase: testStreamAnnotation took 0.034 sec Testcase: testWriterErrorAnnotation took 0.035 sec