[hibernate] could not instantiate id generator

net.sf.hibernate.MappingException: could not instantiate id generator at net.sf.hibernate.id.IdentifierGeneratorFactory.create(IdentifierGeneratorFactory.java:82) at net.sf.hibernate.mapping.SimpleValue.createIdentifierGenerator(SimpleValue.java:82) at net.sf.hibernate.persister.AbstractEntityPersister.<init>(AbstractEntityPersister.java:630) at net.sf.hibernate.persister.EntityPersister.<init>(EntityPersister.java:716) at net.sf.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:42) at net.sf.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:137) at net.sf.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:768) at br.com.atmtec.dao.hibernate.HibernateHelper.<init>(HibernateHelper.java:65) at br.com.atmtec.dao.hibernate.HibernateFactoryManager.getSessionFactory(HibernateFactoryManager.java:164) at br.com.atmtec.dao.hibernate.HibernateDAOFactory.<clinit>(HibernateDAOFactory.java:31) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at com.opensymphony.xwork.interceptor.component.ComponentConfiguration.loadClass(ComponentConfiguration.java:134) at com.opensymphony.xwork.interceptor.component.ComponentConfiguration.configure(ComponentConfiguration.java:65) at com.opensymphony.webwork.lifecycle.ApplicationLifecycleListener.contextInitialized(ApplicationLifecycleListener.java:60) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3805) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4321) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083) at org.apache.catalina.core.StandardHost.start(StandardHost.java:789) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478) at org.apache.catalina.core.StandardService.start(StandardService.java:476) at org.apache.catalina.core.StandardServer.start(StandardServer.java:2298) at org.apache.catalina.startup.Catalina.start(Catalina.java:556) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:284) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:422) Caused by: java.lang.ClassNotFoundException: at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at net.sf.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:102) at net.sf.hibernate.id.IdentifierGeneratorFactory.create(IdentifierGeneratorFactory.java:76) ... 29 more

Estou usando postgresql 7.4.3 e apache dbcp.
A causa esta sendo uma java.lang.ClassNotFoundException, mas meu hibernate.jar tá lá no WEB-INF/lib. Estava funcionando até eu alterar um mapeamento para utilizar generator-class=“assigned”. Alguém já teve esse problema?

Quando vc utiliza assigned vc deve atribuir um identificador manualmente.

A principio diria que vc está tentando utilizar um gerador de código cuja classe não exite.

Confira qual identificador está chegando ao salvar o objeto.

flw

O problema estava no mapeamento de uma classe onde a tag generator-class estava em branco. Tive que revisar todas minhas tags do xdoclet pra encontrar o problema.