hi,

please have a look at the wildfly-config for module-isolation.

regards,
gerhard



2018-07-05 11:06 GMT+02:00 Gofio Code <[email protected]>:

> Dear community,
>
> I am using DeltaSpike Data Module 1.7.2 (some problem with 1.8.2) in a
> project together with JPA and Vaadin 8.4.4. The proyectis deployed to
> WildFly 13.0.0.Final by means of a ear file.
>
> Structure of the ear:
>
> * EAR File
>     |- lib/
>     |       |-  deltaspike jars (including
> "deltaspike-jpa-module-impl-1.7.2.jar")
>     |       `-   persistence.jar     >> includes JPA, deltaspike
> Repositories
>     |- ejbServices.jar               >> it uses the deltaspike Repositories
>     `- vaadinApp.war               >> it uses the ejbServices
>
> If I didn't set any TransactionStrategy it is deployed and I can even use a
> repository to execute a "findAll()" successfully. But if I set
> ContainerManagedTransactionStrategy to ContainerManagedTransactionStrategy
> I get this exception at deplyment time:
>
> ------------------------
> 08:49:44,060 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2)
> MSC000001: Failed to start service
> jboss.deployment.unit."gesteven-app-0.0.1-SNAPSHOT.ear".WeldStartService:
> org.jboss.msc.service.StartException in service
> jboss.deployment.unit."gesteven-app-0.0.1-SNAPSHOT.ear".WeldStartService:
> Failed to start service
>     at
> org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(
> ServiceControllerImpl.java:1728)
>     at
> org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(
> ServiceControllerImpl.java:1556)
>     at
> org.jboss.threads.ContextClassLoaderSavingRunnable.run(
> ContextClassLoaderSavingRunnable.java:35)
>     at
> org.jboss.threads.EnhancedQueueExecutor.safeRun(
> EnhancedQueueExecutor.java:1985)
>     at
> org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(
> EnhancedQueueExecutor.java:1487)
>     at
> org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(
> EnhancedQueueExecutor.java:1378)
>     at java.lang.Thread.run(Thread.java:748)
> Caused by: org.jboss.weld.exceptions.DefinitionException: Exception List
> with 1 exceptions:
> Exception 0 :
> java.lang.IllegalStateException: Can't find class
> org.apache.deltaspike.jpa.impl.transaction.ContainerManagedTransactionStr
> ategy
> which is configured for
> org.apache.deltaspike.jpa.spi.transaction.TransactionStrategy
>     at
> org.apache.deltaspike.core.impl.exclude.extension.ExcludeExtension.
> activateGlobalAlternatives(ExcludeExtension.java:303)
>     at
> org.apache.deltaspike.core.impl.exclude.extension.
> ExcludeExtension.vetoBeans(ExcludeExtension.java:174)
>     at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
>     at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(
> DelegatingMethodAccessorImpl.java:43)
>     at java.lang.reflect.Method.invoke(Method.java:498)
>     at
> org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(
> StaticMethodInjectionPoint.java:95)
>     at
> org.jboss.weld.injection.MethodInvocationStrategy$
> SpecialParamPlusBeanManagerStrategy.invoke(MethodInvocationStrategy.java:
> 144)
>     at
> org.jboss.weld.event.ObserverMethodImpl.sendEvent(
> ObserverMethodImpl.java:330)
>     at
> org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(
> ExtensionObserverMethodImpl.java:123)
>     at
> org.jboss.weld.event.ObserverMethodImpl.sendEvent(
> ObserverMethodImpl.java:308)
>     at
> org.jboss.weld.event.ObserverMethodImpl.notify(
> ObserverMethodImpl.java:286)
>     at
> org.jboss.weld.bootstrap.events.ContainerLifecycleEvents.
> fireProcessAnnotatedType(ContainerLifecycleEvents.java:203)
>     at
> org.jboss.weld.bootstrap.events.ContainerLifecycleEvents.
> fireProcessAnnotatedType(ContainerLifecycleEvents.java:174)
>     at
> org.jboss.weld.bootstrap.BeanDeployer.processAnnotatedTypes(
> BeanDeployer.java:166)
>     at
> org.jboss.weld.bootstrap.BeanDeployment.createTypes(
> BeanDeployment.java:219)
>     at
> org.jboss.weld.bootstrap.WeldStartup.startInitialization(
> WeldStartup.java:415)
>     at
> org.jboss.weld.bootstrap.WeldBootstrap.startInitialization(
> WeldBootstrap.java:79)
>     at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:95)
>     at
> org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(
> ServiceControllerImpl.java:1736)
>     at
> org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(
> ServiceControllerImpl.java:1698)
>     at
> org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(
> ServiceControllerImpl.java:1556)
>     at
> org.jboss.threads.ContextClassLoaderSavingRunnable.run(
> ContextClassLoaderSavingRunnable.java:35)
>     at
> org.jboss.threads.EnhancedQueueExecutor.safeRun(
> EnhancedQueueExecutor.java:1985)
>     at
> org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(
> EnhancedQueueExecutor.java:1487)
>     at
> org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(
> EnhancedQueueExecutor.java:1378)
>     at java.lang.Thread.run(Thread.java:748)
>
>     at
> org.jboss.weld.bootstrap.events.ContainerLifecycleEvents.
> fireProcessAnnotatedType(ContainerLifecycleEvents.java:210)
>     at
> org.jboss.weld.bootstrap.events.ContainerLifecycleEvents.
> fireProcessAnnotatedType(ContainerLifecycleEvents.java:174)
>     at
> org.jboss.weld.bootstrap.BeanDeployer.processAnnotatedTypes(
> BeanDeployer.java:166)
>     at
> org.jboss.weld.bootstrap.BeanDeployment.createTypes(
> BeanDeployment.java:219)
>     at
> org.jboss.weld.bootstrap.WeldStartup.startInitialization(
> WeldStartup.java:415)
>     at
> org.jboss.weld.bootstrap.WeldBootstrap.startInitialization(
> WeldBootstrap.java:79)
>     at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:95)
>     at
> org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(
> ServiceControllerImpl.java:1736)
>     at
> org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(
> ServiceControllerImpl.java:1698)
>     ... 6 more
>     Suppressed: java.lang.IllegalStateException: Can't find class
> org.apache.deltaspike.jpa.impl.transaction.ContainerManagedTransactionStr
> ategy
> which is configured for
> org.apache.deltaspike.jpa.spi.transaction.TransactionStrategy
>         at
> org.apache.deltaspike.core.impl.exclude.extension.ExcludeExtension.
> activateGlobalAlternatives(ExcludeExtension.java:303)
>         at
> org.apache.deltaspike.core.impl.exclude.extension.
> ExcludeExtension.vetoBeans(ExcludeExtension.java:174)
>         at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(
> DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:498)
>         at
> org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(
> StaticMethodInjectionPoint.java:95)
>         at
> org.jboss.weld.injection.MethodInvocationStrategy$
> SpecialParamPlusBeanManagerStrategy.invoke(MethodInvocationStrategy.java:
> 144)
>         at
> org.jboss.weld.event.ObserverMethodImpl.sendEvent(
> ObserverMethodImpl.java:330)
>         at
> org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(
> ExtensionObserverMethodImpl.java:123)
>         at
> org.jboss.weld.event.ObserverMethodImpl.sendEvent(
> ObserverMethodImpl.java:308)
>         at
> org.jboss.weld.event.ObserverMethodImpl.notify(
> ObserverMethodImpl.java:286)
>         at
> org.jboss.weld.bootstrap.events.ContainerLifecycleEvents.
> fireProcessAnnotatedType(ContainerLifecycleEvents.java:203)
>         ... 14 more
> ------------------------
>
> I have double checked the ear file and
> "deltaspike-jpa-module-impl-1.7.2.jar" is in its lib folder... Why is it
> saying it can't find the class
> org.apache.deltaspike.jpa.impl.transaction.ContainerManagedTransactionStr
> ategy?????
> Any ideas?? Could the TransactionStrategy be declared in a different way?
>
> ** Below is the rest of my configuraion **
>
> ===========
> persistence.jar
> ===========
>
> >> pom.xml dependency:
>
>     <dependency>
>       <groupId>org.apache.deltaspike.modules</groupId>
>       <artifactId>deltaspike-data-module-api</artifactId>
>       <version>1.7.2</version>
>       <scope>compile</scope>
>     </dependency>
>     <dependency>
>       <groupId>org.apache.deltaspike.modules</groupId>
>       <artifactId>deltaspike-data-module-impl</artifactId>
>       <version>1.7.2</version>
>       <scope>runtime</scope>
>    </dependency>
>
>
> >> META-INF/apache-deltaspike.properties:
> globalAlternatives.org.apache.deltaspike.jpa.spi.transaction.
> TransactionStrategy=org.apache.deltaspike.jpa.impl.transaction.
> ContainerManagedTransactionStrategy
>
> >> META-INF/beans.xml:
>    this file is empty
>
> >> META-INF/persistence.xml:
> <persistence version="2.1"  xmlns="http://xmlns.jcp.org/xml/ns/persistence
> "
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> xsi:schemaLocation="
> http://xmlns.jcp.org/xml/ns/persistence
> http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd";>
>     <persistence-unit name="myapp-persistence" transaction-type="JTA">
>         <provider>org.hibernate.jpa.HibernatePersistenceProvider</
> provider>
>         <jta-data-source>java:jboss/datasources/myAppDS</jta-data-source>
>
>         <exclude-unlisted-classes>false</exclude-unlisted-classes>
>         <properties>
>             <property name="hibernate.dialect"
> value="org.hibernate.dialect.PostgreSQLDialect" />
>         </properties>
>     </persistence-unit>
> </persistence>
> -----------------------------------------
>
> >> The EntityManager defined in EntityManagerProducer.java:
> public class EntityManagerProducer {
>     @PersistenceUnit
>     private EntityManagerFactory emf;
>
>     @Produces // you can also make this @RequestScoped
>     public EntityManager create()
>     {
>         return emf.createEntityManager();
>     }
>
>     public void close(@Disposes EntityManager em)
>     {
>         if (em.isOpen())
>         {
>             em.close();
>         }
>     }
> }
>
>
> ======================
>
> It seems to be a classloader problem, but as far as
> "deltaspike-jpa-module-impl-1.7.2.jar" is inside the lib folder of the ear
> file, i can't figure out why it can't find it...
>
> Any help will be appreciated, thanks in advance!!
>

Reply via email to