Search code examples
apache-tomeeopenejb

Apache TomEE cannot instantiate a managed executor service resource


In a fresh install of TomEE 10, I have declared a resource in tomee.xml as described in https://tomee.apache.org/admin/configuration/resources.html:

<Resource id="Foo" type="ManagedExecutorService">
  Core = 5
  Max = 25
  KeepAlive = 5 s
  Queue = 15
  ThreadFactory = org.apache.openejb.threads.impl.ManagedThreadFactoryImpl
  Lazy = true
</Resource>

But upon starting, TomEE gives an error in catalina.out:

25-Jun-2024 21:07:30.229 SEVERE [main] jdk.internal.reflect.NativeMethodAccessorImpl.invoke Exception processing global JNDI Resources
org.apache.openejb.core.ivm.naming.LazyObjectReference$LazyNamingException: 
Error calling instance factory method: public org.apache.openejb.threads.impl.ManagedExecutorServiceImpl 
 org.apache.openejb.resource.thread.ManagedExecutorServiceImplFactory.create()
    at org.apache.openejb.core.ivm.naming.LazyObjectReference.getObject(LazyObjectReference.java:39) …

The stack trace is not complete because there is no “Caused by …”

This is fresh VM, with a fresh install of Ubuntu 24.04, openjdk-17 and TomEE 10.0.0-M1-plume. What could be the error?


Solution

  • This is a bug in TomEE 10.0.0-M1 and is fixed in TomEE 10.0.0-M2.