Affects Version/s: 3.1
Fix Version/s: 3.1_b20
Operating System: All
It is possible for CommonWorkManager to end up with a null ThreadPool.
Because of this, the startWork() method can cause a NullPointerException (at
line 265 in the code as of June 10, 2010) because it blindly calls a method on
the tp instance variable. At the time of the call, tp can be null.
tp can be null if the constructor's invocation of ConnectorRuntime#isServer()
It appears to be the case that when Glassfish 3.1-SNAPSHOT is run in embedded
mode, isServer() returns false. I don't think it should.
To see this problem, attempt to deploy an .ear file with a valid .rar file
inside it that attempts to start work as part of its initialization (which is
legal according to the JCA specification). You'll see the NullPointerException
at the point that the RA tries to start work.
The forum discussion is here: