Fwd: NullPointerException in websocket endpoint onerror

2015-01-15 Thread Evil Bit
We're seeing the following issue with a websocket endpoint on tomcat 8.0.15 
when OnError tries to close the websocket session. What could be the problem?

java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedMethodAccessor91.invoke(Unknown Source)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at 
org.apache.tomcat.websocket.pojo.PojoEndpointBase.onError(PojoEndpointBase.java:134)
at 
org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.onError(WsHttpUpgradeHandler.java:167)
at 
org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.access$300(WsHttpUpgradeHandler.java:48)
at 
org.apache.tomcat.websocket.server.WsHttpUpgradeHandler$WsReadListener.onError(WsHttpUpgradeHandler.java:228)
at 
org.apache.coyote.http11.upgrade.AbstractServletInputStream.onError(AbstractServletInputStream.java:209)
at 
org.apache.coyote.http11.upgrade.Nio2ServletInputStream$1.failed(Nio2ServletInputStream.java:76)
at 
org.apache.coyote.http11.upgrade.Nio2ServletInputStream$1.failed(Nio2ServletInputStream.java:49)
at sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:128)
at sun.nio.ch.Invoker$2.run(Invoker.java:218)
at 
sun.nio.ch.AsynchronousChannelGroupImpl$1.run(AsynchronousChannelGroupImpl.java:112)
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
at 
org.apache.tomcat.websocket.server.WsRemoteEndpointImplServer.onWritePossible(WsRemoteEndpointImplServer.java:96)
at 
org.apache.tomcat.websocket.server.WsRemoteEndpointImplServer.doWrite(WsRemoteEndpointImplServer.java:81)
at 
org.apache.tomcat.websocket.WsRemoteEndpointImplBase.writeMessagePart(WsRemoteEndpointImplBase.java:444)
at 
org.apache.tomcat.websocket.WsRemoteEndpointImplBase.startMessage(WsRemoteEndpointImplBase.java:335)
at 
org.apache.tomcat.websocket.WsRemoteEndpointImplBase.startMessageBlock(WsRemoteEndpointImplBase.java:264)
at 
org.apache.tomcat.websocket.WsSession.sendCloseMessage(WsSession.java:536)
at org.apache.tomcat.websocket.WsSession.doClose(WsSession.java:464)
at org.apache.tomcat.websocket.WsSession.close(WsSession.java:441)
at com.testEndpoint.onWebSocketError(WebsocketEndpoint.java:52)




Issues with log4j.core.async.AsyncLoggerContextSelector when upgrading from 8.0.15 to 8.0.18

2015-02-04 Thread Evil Bit
I've recently upgraded from 8.0.15 to 8.0.18 and I have a new problem which I 
didn't have on 8.0.15. The configuration of tomcat and my application remained 
exactly the same when upgrading.

When running tomcat with 
-DLog4jContextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector
 (defined in setenv.sh) to enable log4j2's async logging, I now get a 
ClassNotFoundException (see below). What could be the problem?

Here's catalina.out with FINE level logging for org.apache.jasper.servlet:

04-Feb-2015 16:28:39.721 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log Server version:
Apache Tomcat/8.0.18
04-Feb-2015 16:28:39.721 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log Server built:  
Jan 23 2015 11:56:07 UTC
04-Feb-2015 16:28:39.722 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log Server number: 
8.0.18.0
04-Feb-2015 16:28:39.722 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log OS Name:   
Linux
04-Feb-2015 16:28:39.722 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log OS Version:
3.13.0-45-generic
04-Feb-2015 16:28:39.723 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log Architecture:  
amd64
04-Feb-2015 16:28:39.723 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log Java Home: 
/usr/lib/jvm/jdk1.7.0_71/jre
04-Feb-2015 16:28:39.723 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log JVM Version:   
1.7.0_71-b14
04-Feb-2015 16:28:39.723 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:
Oracle Corporation
04-Feb-2015 16:28:39.724 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: 
/home/tomcat/apache-tomcat-8.0.18
04-Feb-2015 16:28:39.724 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: 
/home/tomcat/apache-tomcat-8.0.18
04-Feb-2015 16:28:39.725 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log Command line argument: 
-Djava.util.logging.config.file=/home/tomcat/current_tomcat/conf/logging.properties
04-Feb-2015 16:28:39.725 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log Command line argument: 
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
04-Feb-2015 16:28:39.729 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log Command line argument: 
-DLog4jContextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector
04-Feb-2015 16:28:39.730 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log Command line argument: 
-Djava.endorsed.dirs=/home/tomcat/current_tomcat/endorsed
04-Feb-2015 16:28:39.730 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log Command line argument: 
-Dcatalina.base=/home/tomcat/current_tomcat
04-Feb-2015 16:28:39.730 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log Command line argument: 
-Dcatalina.home=/home/tomcat/current_tomcat
04-Feb-2015 16:28:39.730 INFO [main] 
org.apache.catalina.startup.VersionLoggerListener.log Command line argument: 
-Djava.io.tmpdir=/home/tomcat/current_tomcat/temp
04-Feb-2015 16:28:39.731 INFO [main] 
org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based 
Apache Tomcat Native library which allows optimal performance in production 
environments wa
s not found on the java.library.path: 
/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
04-Feb-2015 16:28:40.216 INFO [main] org.apache.coyote.AbstractProtocol.init 
Initializing ProtocolHandler ["http-nio2-8080"]
04-Feb-2015 16:28:40.367 INFO [main] org.apache.catalina.startup.Catalina.load 
Initialization processed in 2840 ms
04-Feb-2015 16:28:40.512 INFO [main] 
org.apache.catalina.core.StandardService.startInternal Starting service Catalina
04-Feb-2015 16:28:40.519 INFO [main] 
org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: 
Apache Tomcat/8.0.18
04-Feb-2015 16:28:42.315 FINE [localhost-startStop-1] 
org.apache.jasper.servlet.JasperInitializer.onStartup Initializing Jasper for 
context [null]
04-Feb-2015 16:28:42.514 FINE [localhost-startStop-1] 
org.apache.jasper.servlet.JspServlet.init Scratch dir for the JSP engine is: 
/home/tomcat/apache-tomcat-8.0.18/work/Catalina/localhost/plstatic
04-Feb-2015 16:28:42.522 FINE [localhost-startStop-1] 
org.apache.jasper.servlet.JspServlet.init IMPORTANT: Do not modify the 
generated servlets
04-Feb-2015 16:28:42.635 FINE [localhost-startStop-1] 
org.apache.jasper.servlet.JasperInitializer.onStartup Initializing Jasper for 
context [null]
04-Feb-2015 16:28:42.663 FINE [localhost-startStop-1] 
org.apache.jasper.servlet.JspServlet.init Scratch dir for the JSP engine is: 
/home/tomcat/apache-tomcat-8.0.18/work/Catalina/localhost/release
04-Feb-2015 16:28:42.667 FINE [localhost-startStop-1] 
org.apache.jasper.servlet.JspServlet.init IM

RE: Issues with log4j.core.async.AsyncLoggerContextSelector when upgrading from 8.0.15 to 8.0.18

2015-02-04 Thread Evil Bit
setenv.sh does have an extra "\r" but the same file worked for me on 8.0.15 - I 
only copied it from the older tomcat.
I removed it and now it works on 8.0.18 too. thank you.

 On Wed, 04 Feb 2015 08:52:24 -0800  
Caldarale<chuck.caldar...@unisys.com> wrote ---- 

> From: Evil Bit [mailto:evil...@zoho.com] 
> Subject: Issues with log4j.core.async.AsyncLoggerContextSelector when 
upgrading from 8.0.15 to 8.0.18 
 
> When running tomcat with 
> 
-DLog4jContextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector
 
> (defined in setenv.sh) to enable log4j2's async logging, I now get a 
ClassNotFoundException 
> (see below). What could be the problem? 
 
> ERROR StatusLogger Unable to create context 
org.apache.logging.log4j.core.async.AsyncLoggerContextSelector^M 
 
Note the ^M at the end of the class name; this makes me suspicious that your 
setenv.sh file has been edited on Windows and then used on Linux/UNIX/OSX/? 
(been there, done that). 
 
 - Chuck 
 
 
THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY 
MATERIAL and is thus for use only by the intended recipient. If you received 
this in error, please contact the sender and delete the e-mail and its 
attachments from all computers. 
 
 
 
- 
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org 
For additional commands, e-mail: users-h...@tomcat.apache.org