Hi,

I am migrating a code base from Tomcat 8.0.38 to 9.0.6. There are a few
things
I'd like to confirm based on observations so far and ask for advice:

1. Default Class Loader

In 9, it seems that the default is ParallelWebAppClassLoader compared with
WebAppClassLoader in 8.0.
What behavior changes does the new class loader bring esp. now that it
seems to use "concurrent" approach?

One specific observation so far is that the code

Thread.currentThread().getContextClassLoader()

used to give out "a" class loader in 8.0 but it returns null in 9.0.
Any advice on this?

2. ClassNotFoundException: org.apache.naming.java.javaURLContextFactory

Having the code:

InitialContext ic = new InitialContext()

used to work on Tomcat 8.0 but now yields the above exception in Tomcat 9.
It seems that catalina.jar is not exposed by default to a webapp class
loader.
Is this correct? What needs to be configured to fix this?

Thanks in advance!
Behrooz

Reply via email to