Hi guys,

I'm updating our project from TomEE 8 to TomEE 9.

It compiles but our test framework is unhappy during runtime.

There is some magic which I don't understand in detail.

First we tell the EJBContainer to use deltaspike:

   System.setProperty("openejb.deployments.classpath.include", 
".*deltaspike.*");

The the EJBContainer will be created.

   ejbContainer = jakarta.ejb.embeddable.EJBContainer.createEJBContainer();

When checking the module deltaspike-core-impl-1.9.6 which is in the classpath 
an excpetion will be thrown.

jakarta.ejb.EJBException: No EJBContainer provider available
Provider named org.apache.openejb.OpenEjbContainer$Provider threw unexpected 
exception at create EJBContainer:
java.lang.NoClassDefFoundError
java.lang.NoClassDefFoundError: jakarta/management/Notification
        at java.base/java.lang.Class.getDeclaredMethods0(Native Method)
        at java.base/java.lang.Class.privateGetDeclaredMethods(Class.java:3402)
        at java.base/java.lang.Class.getDeclaredMethods(Class.java:2504)
        at 
org.apache.xbean.finder.AnnotationFinder.readClassDef(AnnotationFinder.java:1203)
        at 
org.apache.xbean.finder.AnnotationFinder.linkInterfaces(AnnotationFinder.java:440)
        at 
org.apache.xbean.finder.AnnotationFinder.enableFindImplementations(AnnotationFinder.java:254)
[...]

Caused by: java.lang.ClassNotFoundException: jakarta.management.Notification
        at 
org.apache.openejb.core.TempClassLoader.loadClass(TempClassLoader.java:186)
        at 
org.apache.openejb.core.TempClassLoader.loadClass(TempClassLoader.java:83)
        ... 93 more


The following providers:
org.apache.tomee.embedded.EmbeddedTomEEContainer$EmbeddedTomEEContainerProvider
Returned null from createEJBContainer call.

My understanding is this class jakarta.management.Notification is not existing. 
It should be still javax.management.Notification.

def deltaSpikeVersion = '1.9.6'

    testImplementation 'org.apache.tomee:tomee-embedded:9.1.0'

    testImplementation 'org.apache.deltaspike.cdictrl:deltaspike-cdictrl-api:' 
+ deltaSpikeVersion
//    testImplementation 
'org.apache.deltaspike.cdictrl:deltaspike-cdictrl-owb:' + deltaSpikeVersion
    testImplementation 'org.apache.deltaspike.cdictrl:deltaspike-cdictrl-owb:' 
+ deltaSpikeVersion + ':jakarta'
    testImplementation 'org.apache.deltaspike.core:deltaspike-core-api:' + 
deltaSpikeVersion
    testImplementation 'org.apache.deltaspike.core:deltaspike-core-impl:' + 
deltaSpikeVersion
//    testImplementation 
'org.apache.deltaspike.modules:deltaspike-servlet-module-api:' + 
deltaSpikeVersion
    testImplementation 
'org.apache.deltaspike.modules:deltaspike-servlet-module-api:' + 
deltaSpikeVersion + ':jakarta'
//    testImplementation 
'org.apache.deltaspike.modules:deltaspike-servlet-module-impl:' + 
deltaSpikeVersion
    testImplementation 
'org.apache.deltaspike.modules:deltaspike-servlet-module-impl:' + 
deltaSpikeVersion + ':jakarta'
    testImplementation 'org.apache.deltaspike.test:test-utils:' + 
deltaSpikeVersion

Does anybody have an idea what I can do?

Thanks,
Markus


Reply via email to