[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[cu-dev] unchanged JNDI in CompletableFuture.thenAcceptAsync() created from ManageExecutorService
|
Hello,
I'm looking at test
ManagedExecutorDefinitionTests/ManagedExecutorDefinitionServlet.testCompletedFuture,
using "java:module/concurrent/ExecutorB" ManagedExecutorService,
which is configured to use this context:
@ContextServiceDefinition(name = "java:module/concurrent/ContextB",
cleared = TRANSACTION,
unchanged = { APPLICATION, IntContext.NAME },
propagated = ALL_REMAINING)
E.g. the implementation must keep APPLICATION (JNDI search)
unchanged during the thenAcceptAsync() call.
This test expects, that the thread's context doesn't recognize java:module JNDI lookup. As I
understand, Open Liberty starts threads with "empty contexts", so
JNDI calls fail and TCK test succeeds.
This is not the case of Payara/Glassfish, which shares the
context of launching thread, so the JNDI call succeed. I fear,
that changing the behavior of thread in MES may break
compatibility with existing application.
I would like to ask, if there is described the requirement of
failing JNDI search for java:module
if using ContextServiceDefinition.unchanged(APPLICATION). I
haven't found any. APPLICATION javadoc only describes behavior for
cleared.
Thank you,
Petr