Re: How to use Hibernate in a module project?

Peter Nabbefeld <[email protected]>
Newsgroups gmane.comp.java.netbeans.modules.openide.devel
Message-ID <[email protected]>
I've now added my persistence.xml to my own Hibernate library module. 
While IMO this is a bad idea (though it won't hurt in a lib project 
private to my suite project), it works - partly.

When running my project, I'm getting the following exception:

============================================================

java.util.ServiceConfigurationError: 
org.hibernate.boot.registry.selector.StrategyRegistrationProvider: 
Provider org.hibernate.cache.ehcache.StrategyRegistrationProviderImpl 
not a subtype
	at java.util.ServiceLoader.fail(ServiceLoader.java:239)
	at java.util.ServiceLoader.access$300(ServiceLoader.java:185)
	at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:376)
	at java.util.ServiceLoader$LazyIterator.access$700(ServiceLoader.java:323)
	at java.util.ServiceLoader$LazyIterator$2.run(ServiceLoader.java:407)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:409)
	at java.util.ServiceLoader$1.next(ServiceLoader.java:480)
	at 
org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.loadJavaServices(ClassLoaderServiceImpl.java:324)
	at 
org.hibernate.boot.registry.selector.internal.StrategySelectorBuilder.buildSelector(StrategySelectorBuilder.java:162)
	at 
org.hibernate.boot.registry.BootstrapServiceRegistryBuilder.build(BootstrapServiceRegistryBuilder.java:222)
	at 
org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.buildBootstrapServiceRegistry(EntityManagerFactoryBuilderImpl.java:365)
	at 
org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:166)
	at 
org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder(Bootstrap.java:34)
	at 
org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilder(HibernatePersistenceProvider.java:165)
	at 
org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull(HibernatePersistenceProvider.java:114)
	at 
org.hibernate.ejb.HibernatePersistence.getEntityManagerFactoryBuilderOrNull(HibernatePersistence.java:76)
	at 
org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull(HibernatePersistenceProvider.java:71)
	at 
org.hibernate.ejb.HibernatePersistence.getEntityManagerFactoryBuilderOrNull(HibernatePersistence.java:84)
	at 
org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:52)
	at 
org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:37)
	at 
javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:55)
	at 
javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:39)
	at 
de.epdv.jobs.offers.db.jpa.JobEntityManagerFactoryProvider.createFactory(JobEntityManagerFactoryProvider.java:68)
[catch] at 
de.epdv.jobs.offers.db.jpa.JobEntityManagerFactoryProvider.getFactory(JobEntityManagerFactoryProvider.java:33)
	at 
de.epdv.jobs.offers.db.jpa.JobEntityManagerFactoryProvider.<init>(JobEntityManagerFactoryProvider.java:27)
	at 
de.epdv.jobs.offers.db.jpa.JobEntityManagerFactoryProvider.getInstance(JobEntityManagerFactoryProvider.java:18)
	at de.epdv.jobs.offers.db.JobOffersTable.insert(JobOffersTable.java:68)
	at 
de.epdv.jobs.offers.wf.mgmt.api.WorkflowContext.persistJobOffer(WorkflowContext.java:41)
	at 
de.epdv.jobs.offers.wf.mgmt.impl.MarkStep$1.actionPerformed(MarkStep.java:36)
	at 
de.epdv.jobs.offers.wf.mgmt.api.WorkflowAction.actionPerformed(WorkflowAction.java:34)
	at 
de.epdv.jobs.offers.wf.mgmt.WorkflowPanel$1.actionPerformed(WorkflowPanel.java:98)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	at 
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
	at 
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at 
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
	at java.awt.Component.processMouseEvent(Component.java:6533)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6298)
	at java.awt.Container.processEvent(Container.java:2236)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2294)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
	at java.awt.Container.dispatchEventImpl(Container.java:2280)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at 
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at 
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.awt.EventQueue$4.run(EventQueue.java:729)
	at java.security.AccessController.doPrivileged(Native Method)
	at 
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
	at 
org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:159)
	at 
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	at 
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at 
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

============================================================

Jar files are copied from the same wildfly 10 installation, so 
incompatibilities shouldn't be the cause for this. However, didn't use 
the installed server yet.

Any idea, what's going wrong?

Kind regards
Peter



Am 20.11.2016 um 23:07 schrieb Peter Nabbefeld:
> I've now tried to create my own Library project, copying Wildfly 10 jar
> files (which provide Hibernate 5.0.7).
>
> Getting further exceptions; obviously persistence.xml is not found,
> though I provided one in META-INF of my module.
>
> So, how can I provide this file to Hibernate?
>
> Kind regards
> Peter
>
>
> Am 20.11.2016 um 16:19 schrieb Peter Nabbefeld:
>>
>> Hello,
>>
>> when trying to use Hibernate for a module project, I'm getting the
>> following exception:
>>
>> java.lang.NoClassDefFoundError: org/jboss/jandex/IndexView
>>
>> The problem is the Hibernate dependency not beeing able to access the
>> jandex jar file, as it's not available for the Hibernate module on its
>> classpath.
>>
>> While I'd guess it would be possible to add that jar file to the
>> netbeans classpath to solve the problem, that's not an option for a
>> plugin module.
>>
>> How could I manage to get the jar file into the hibernate classpath?
>>
>> Kind regards
>> Peter
>>
>>
>
>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.