users@glassfish.java.net

Re: Problems with RESTful Web services and Hibernate

From: Marina Vatkina <Marina.Vatkina_at_Sun.COM>
Date: Fri, 12 Sep 2008 13:42:13 -0700

This means that Toplink jars are in the classpath, but Hibernate are not.

-marina

glassfish_at_javadesktop.org wrote:
> Hi, Paul (or whoever that can help me)...
>
> After solving my first problem with asm version incompatibilities I have another problem. As i said in my previous post i'm trying to use Hibernate and RESTful Web Services, at first i tried just to get it to work using plain Hibernate with XML mapping and that worked fine, but what i want is to map using annotations.
>
> Now, as i wrote, when i used the wizards, which build the annotated classes using JPA, i have got an error.
>
> I don't know so much about it but i don't need to use EJB, i want to keep my services as lightweight as i can, is there any way of using JPA annotations without using EJB?
>
> Maybe it is just a mistake i'm of mine due the way i'm doing the configuration (see below)
>
> Here is the dump of the error:
>
> javax.persistence.PersistenceException: No Persistence provider for EntityManager named defaultPU: Provider named org.hibernate.ejb.HibernatePersistence threw unexpected exception at create EntityManagerFactory:
> java.lang.NoClassDefFoundError
> java.lang.NoClassDefFoundError: Could not initialize class org.hibernate.ejb.Ejb3Configuration
> at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:124)
> at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:110)
> at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:83)
> at service.PersistenceService.(PersistenceService.java:38)
> at service.PersistenceService.(PersistenceService.java:23)
> at service.PersistenceService$1.initialValue(PersistenceService.java:29)
> at service.PersistenceService$1.initialValue(PersistenceService.java:26)
> at java.lang.ThreadLocal.setInitialValue(ThreadLocal.java:141)
> at java.lang.ThreadLocal.get(ThreadLocal.java:131)
> at service.PersistenceService.getInstance(PersistenceService.java:55)
> at service.TestService.get(TestService.java:27)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.sun.jersey.impl.model.method.dispatch.EntityParamDispatchProvider$TypeOutInvoker._dispatch(EntityParamDispatchProvider.java:131)
> at com.sun.jersey.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:81)
> at com.sun.jersey.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:133)
> at com.sun.jersey.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:71)
> at com.sun.jersey.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:111)
> at com.sun.jersey.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:64)
> at com.sun.jersey.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:669)
> at com.sun.jersey.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:631)
> at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:291)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
> at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:317)
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
> at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:288)
> at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
> at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
> at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
> at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
> at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
> at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
> at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
> at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
> at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
> at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
> at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
> at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
> at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272)
> at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
> at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
> at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
> at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
> at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
> at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
> at com.sun.enterprise.web.portunif.PortUnificationPipeline$PUTask.doTask(PortUnificationPipeline.java:380)
> at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
> at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
>
>
> The following providers:
> oracle.toplink.essentials.PersistenceProvider
> oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider
> Returned null to createEntityManagerFactory.
>
>
> There are many things in this error that i cannot understand: Why is trying to use Toplink essentials if i'm not using it on my project, also i don't know why use grizzly, i guess it was added due the Jersey librariy in NetBeans IDE but i didn't configurate anything about it. Also i don't know why is using org.apache.catalina.core because i changed from Tomcat to Glassfish. It is that right?
>
> Here my persistence.xml (maybe it is misconfigured, i mixed some previous hibernate settings with jpa settings):
>
> <persistence-unit name="defaultPU">
> <provider>org.hibernate.ejb.HibernatePersistence</provider>
> <jta-data-source>hibernate123</jta-data-source>
> <exclude-unlisted-classes>false</exclude-unlisted-classes>
> <properties>
> <property name="hibernate.archive.autodetection" value="class, hbm"/>
> <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
> </properties>
> </persistence-unit>
>
> And here my 'hibernate123' resource in context.xml:
>
> <Resource auth="Container" driverClassName="com.mysql.jdbc.Driver" maxActive="20" maxIdle="10" maxWait="-1" name="hibernate123" password="password" type="javax.sql.DataSource" url="jdbc:mysql://localhost:3306/hibernate" username="username"/>
>
> I'm sorry for my ignorance in this subjects but i'm new with all these technologies.
> Any help will be welcome.
> Thanks.
> [Message sent by forum member 'zeven' (zeven)]
>
> http://forums.java.net/jive/thread.jspa?messageID=299138
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: users-help_at_glassfish.dev.java.net
>