Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-19662

Infinispan must not be part of the EAP BOM

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Do
    • Icon: Major Major
    • None
    • 7.3.0.GA
    • BOM
    • None
    • Hide
      Show
      Use this project: http://git.engineering.redhat.com/git/users/jbaesner/playground.git/tag/?h=jdg-8.0.1_with_eap-7.3.0_broken build with Maven `mvn clean package` deploy on freshly unzipped JBoss EAP 7.3.0.GA start the server `$JBOSS_HOME/bin/standalone.sh`

      If an JEE application use the EAP BOM and a Data Grid BOM in one build like this:

          <properties>
              <version.jboss.bom.eap>7.3.0.GA</version.jboss.bom.eap>
              <version.infinispan>10.1.8.Final-redhat-00001</version.infinispan>        
          </properties>
          ...
          <dependencyManagement>
              <dependencies>
                  <dependency>
                      <groupId>org.jboss.bom</groupId>
                      <artifactId>jboss-eap-jakartaee8</artifactId>
                      <version>${version.jboss.bom.eap}</version>
                      <type>pom</type>
                      <scope>import</scope>
                  </dependency>
                  <dependency>
                      <groupId>org.infinispan</groupId>
                      <artifactId>infinispan-bom</artifactId>
                      <version>${version.infinispan}</version>
                      <type>pom</type>
                      <scope>import</scope>
                  </dependency>
              </dependencies>
          </dependencyManagement>
      

      When packaging the JEE application it is going to include the ISPN libs from the EAP BOM instead of the libs from the ISPN BOM, see:

      [INFO] --- maven-ear-plugin:3.0.0:ear (default-ear) @ playground-app-ear ---
      [INFO] Copying artifact [ejb:org.jboss.playground:playground-app-ejb:1.0] to [playground-app-ejb.jar]
      ...
      [INFO] Copying artifact [jar:org.infinispan:infinispan-core:9.4.16.Final-redhat-00002] to [lib/infinispan-core.jar]
      [INFO] Copying artifact [jar:org.infinispan:infinispan-commons:9.4.16.Final-redhat-00002] to [lib/infinispan-commons.jar]
      [INFO] Copying artifact [jar:org.jgroups:jgroups:4.1.4.Final-redhat-00001] to [lib/jgroups.jar]
      [INFO] Copying artifact [jar:com.github.ben-manes.caffeine:caffeine:2.6.2.redhat-1] to [lib/caffeine.jar]
      [INFO] Copying artifact [jar:org.jboss.logging:jboss-logging:3.4.1.Final-redhat-00001] to [lib/jboss-logging.jar]
      [INFO] Copying artifact [jar:io.reactivex.rxjava2:rxjava:2.2.5.redhat-00001] to [lib/rxjava.jar]
      [INFO] Copying artifact [jar:org.reactivestreams:reactive-streams:1.0.2.redhat-1] to [lib/reactive-streams.jar]
      [INFO] Copying artifact [jar:com.google.guava:guava:25.0.0.redhat-1] to [lib/guava.jar]
      ...
      

      As Infinispan is not part of the usable API of EAP, ISPN should NOT be part of the EAP BOM.

      Deploying the built application on the server results in the following stack:

      ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 80) MSC000001: Failed to start service jboss.deployment.subunit."playground-app.ear"."playground-app-ejb.jar".component.DataGridApplicationCacheStartupBean.START: org.jboss.msc.service.StartException in service jboss.deployment.subunit."playground-app.ear"."playground-app-ejb.jar".component.DataGridApplicationCacheStartupBean.START: java.lang.IllegalStateException: WFLYEE0042: Failed to construct component instance
      	at org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:57)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
      	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)
      	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
      	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1348)
      	at java.lang.Thread.run(Thread.java:748)
      	at org.jboss.threads.JBossThread.run(JBossThread.java:485)
      Caused by: java.lang.IllegalStateException: WFLYEE0042: Failed to construct component instance
      	at org.jboss.as.ee.component.BasicComponent.constructComponentInstance(BasicComponent.java:163)
      	at org.jboss.as.ee.component.BasicComponent.constructComponentInstance(BasicComponent.java:134)
      	at org.jboss.as.ee.component.BasicComponent.createInstance(BasicComponent.java:88)
      	at org.jboss.as.ejb3.component.singleton.SingletonComponent.getComponentInstance(SingletonComponent.java:127)
      	at org.jboss.as.ejb3.component.singleton.SingletonComponent.start(SingletonComponent.java:141)
      	at org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:54)
      	... 8 more
      Caused by: javax.ejb.EJBException: WFLYEJB0442: Unexpected Error
      	at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:262)
      	at org.jboss.as.ejb3.tx.CMTTxInterceptor.requiresNew(CMTTxInterceptor.java:400)
      	at org.jboss.as.ejb3.tx.LifecycleCMTTxInterceptor.processInvocation(LifecycleCMTTxInterceptor.java:68)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.as.weld.injection.WeldInjectionContextInterceptor.processInvocation(WeldInjectionContextInterceptor.java:43)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.as.ee.concurrent.ConcurrentContextInterceptor.processInvocation(ConcurrentContextInterceptor.java:45)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.invocation.ContextClassLoaderInterceptor.processInvocation(ContextClassLoaderInterceptor.java:60)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.as.ejb3.component.singleton.StartupCountDownInterceptor.processInvocation(StartupCountDownInterceptor.java:25)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:53)
      	at org.jboss.as.ee.component.BasicComponent.constructComponentInstance(BasicComponent.java:161)
      	... 13 more
      Caused by: java.lang.NoClassDefFoundError: org/jboss/marshalling/ClassResolver
      	at org.infinispan.configuration.global.SerializationConfiguration.<clinit>(SerializationConfiguration.java:16)
      	at org.infinispan.configuration.global.SerializationConfigurationBuilder.<init>(SerializationConfigurationBuilder.java:27)
      	at org.infinispan.configuration.global.GlobalConfigurationBuilder.<init>(GlobalConfigurationBuilder.java:45)
      	at org.infinispan.configuration.global.GlobalConfigurationBuilder.defaultClusteredBuilder(GlobalConfigurationBuilder.java:302)
      	at org.jboss.playground.DataGridApplicationCacheStartupBean.init(DataGridApplicationCacheStartupBean.java:33)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.jboss.as.ee.component.ManagedReferenceLifecycleMethodInterceptor.processInvocation(ManagedReferenceLifecycleMethodInterceptor.java:96)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
      	at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.delegateInterception(Jsr299BindingsInterceptor.java:79)
      	at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doLifecycleInterception(Jsr299BindingsInterceptor.java:126)
      	at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:112)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
      	at org.jboss.weld.module.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:81)
      	at org.jboss.as.weld.ejb.EjbRequestScopeActivationInterceptor.processInvocation(EjbRequestScopeActivationInterceptor.java:89)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.as.weld.injection.WeldInjectionInterceptor.processInvocation(WeldInjectionInterceptor.java:53)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.as.ee.component.AroundConstructInterceptorFactory$1.processInvocation(AroundConstructInterceptorFactory.java:28)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.as.weld.injection.WeldInterceptorInjectionInterceptor.processInvocation(WeldInterceptorInjectionInterceptor.java:56)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.as.weld.interceptors.Jsr299BindingsCreateInterceptor.processInvocation(Jsr299BindingsCreateInterceptor.java:111)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)
      	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
      	at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:249)
      	... 28 more
      Caused by: java.lang.ClassNotFoundException: org.jboss.marshalling.ClassResolver from [Module "deployment.playground-app.ear" from Service Module Loader]
      	at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:255)
      	at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:410)
      	at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
      	at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:116)
      	... 59 more
      

            rpelisse@redhat.com Romain Pelisse
            rhn-support-jbaesner Joerg Baesner
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: