On 27/10/2013 22:41, Konstantin Kolinko wrote:
> 2013/10/28 Francesco Bassi <fvba...@gmail.com>:
>> Hello everybody.
>>
>> I just downloaded 7.0.47 and updated one web application that I developed
>> in order to use the new standard JSR 356 websocket implementation.
>>
>> With this new implementation, I noticed that during the processing of
>> incoming websocket events, it's not possible to access the JNDI resources.
>>
>> ie:
>>
>>             Context initCtx = new InitialContext();
>>             Context c = (Context) initCtx.lookup("java:comp/env");
>>
>> gives
>>
>> javax.naming.NameNotFoundException: Name [comp/env] is not bound in this
>> Context. Unable to find [comp].
>>
>> I'm using a custom ServerEndpointConfig.Configurator.
>>
>> Everything used to work properly with the old custom tomcat implementation.
>>
>> Is it an expected behaviour?
>>
> 
> I think it means that  the thread where you process those events does
> not have its Thread.getContextClassLoader() (aka TCCL) configured and
> thus JNDI does not know to what web application this thread belongs.
> 
> Can you provide the stack trace of the place where you access JNDI
> and check what is the value of
> Thread.currentThread().getContextClassLoader() there?
> 
> If the class loader is not a o.a.c.loader.WebappClassLoader one, I
> think it is OK to create a bugzilla issue.

Agreed. I'll see if I can find the bug by code inspection but a stack
trace would be quicker.

Mark


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

Reply via email to