[hibernate-issues] [Hibernate-JIRA] Commented: (HHH-7084) Caused by: java.lang.ClassCastException: cannot be cast to org.hibernate.dialect.Dialect

Michael Nascimento Santos (JIRA) noreply at atlassian.com
Thu Feb 23 08:12:48 EST 2012


    [ https://hibernate.onjira.com/browse/HHH-7084?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45651#comment-45651 ] 

Michael Nascimento Santos commented on HHH-7084:
------------------------------------------------

I really think this is more of a GWT error than Hibernate's:

http://jira.codehaus.org/browse/MGWT-325?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel#issue-tabs

Hibernate jars shouldn't be in the system classpath AND webserver classpath at the same time to begin with.

> Caused by: java.lang.ClassCastException: cannot be cast to org.hibernate.dialect.Dialect
> ----------------------------------------------------------------------------------------
>
>                 Key: HHH-7084
>                 URL: https://hibernate.onjira.com/browse/HHH-7084
>             Project: Hibernate ORM
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 4.1.0
>         Environment: Idea 11.0.02, JDK 7, GWT 2.4.0 Dev Mode, Hibernate 4.0.0+
>            Reporter: Artem V. Navrotskiy
>              Labels: GWT, hibernate
>         Attachments: classloader.patch, ClassLoaderServiceImplTest.java, ClassLoaderServiceImplTest.java
>
>
> If you run GWT application from JetBrains Idea in Dev Mode, GWT builds custom ClassLoader.
> When Hibernate creates of any object by it's name (Dialect for example), if class available for SystemClassLoader it's will be created by SystemClassLoader. Not by a current ClassLoader.
> This is due to the fact that the class ClassLoaderServiceImpl$1 uses SystemClassLoader as parent ClassLoader.
> Stacktrace:
> javax.persistence.PersistenceException: Unable to build EntityManagerFactory
> 	at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:914)
> 	at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:889)
> 	at ru.buzzsoft.common.HibernateHelper.createEntityManagerFactory(HibernateHelper.java:180)
> 	at ru.buzzsoft.delivery.PersistentFactory.getEntityPersonalFactory(PersistentFactory.java:21)
> 	at ru.buzzsoft.delivery.server.api.impl.ContextImpl.<init>(ContextImpl.java:126)
> 	at ru.buzzsoft.delivery.server.api.impl.ContextImpl.<init>(ContextImpl.java:89)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
> 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> 	at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
> 	at java.lang.Class.newInstance0(Class.java:372)
> 	at java.lang.Class.newInstance(Class.java:325)
> 	at org.mortbay.jetty.servlet.Holder.newInstance(Holder.java:153)
> 	at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:253)
> 	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
> 	at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:616)
> 	at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
> 	at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220)
> 	at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:513)
> 	at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
> 	at com.google.gwt.dev.shell.jetty.JettyLauncher$WebAppContextWithReload.doStart(JettyLauncher.java:468)
> 	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
> 	at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
> 	at org.mortbay.jetty.handler.RequestLogHandler.doStart(RequestLogHandler.java:115)
> 	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
> 	at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
> 	at org.mortbay.jetty.Server.doStart(Server.java:222)
> 	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
> 	at com.google.gwt.dev.shell.jetty.JettyLauncher.start(JettyLauncher.java:672)
> 	at com.google.gwt.dev.DevMode.doStartUpServer(DevMode.java:509)
> 	at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1068)
> 	at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:811)
> 	at com.google.gwt.dev.DevMode.main(DevMode.java:311)
> Caused by: org.hibernate.HibernateException: Could not instantiate dialect class
> 	at org.hibernate.service.jdbc.dialect.internal.DialectFactoryImpl.constructDialect(DialectFactoryImpl.java:82)
> 	at org.hibernate.service.jdbc.dialect.internal.DialectFactoryImpl.buildDialect(DialectFactoryImpl.java:64)
> 	at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:146)
> 	at org.hibernate.service.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:75)
> 	at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:159)
> 	at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:131)
> 	at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:71)
> 	at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2273)
> 	at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2269)
> 	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1738)
> 	at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:88)
> 	at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:904)
> 	... 32 more
> Caused by: java.lang.ClassCastException: org.hibernate.dialect.H2Dialect cannot be cast to org.hibernate.dialect.Dialect
> 	at org.hibernate.service.jdbc.dialect.internal.DialectFactoryImpl.constructDialect(DialectFactoryImpl.java:73)
> 	... 43 more

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the hibernate-issues mailing list