2 Replies Latest reply on Nov 7, 2007 12:01 PM by Levent Aksu

    2.0.0 GA migration: Not an entity class

    Levent Aksu Newbie

      Hi,
      First, thank you for the great product and congratulations for the new release. Great job!

      ... and the problem:
      I have spent a few hours now for migrating my app from 1.2.1. I had to deal with a number of things and resolved but stuck with that one. My app starts and works nicely till it gets to the first "insert" with the following stack trace.

      Hibernate: select nextval ('hibernate_sequence')
      java.lang.IllegalArgumentException: Not an entity class: datassist.payroll.entity.Category
      javax.faces.el.EvaluationException: java.lang.IllegalArgumentException: Not an entity class: datassist.payroll.entity.Category
       at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:97)
       at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:96)
       at javax.faces.component.UICommand.broadcast(UICommand.java:383)
       at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:184)
       at org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:162)
       at org.ajax4jsf.component.AjaxViewRoot.processApplication(AjaxViewRoot.java:350)
       at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
       at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:244)
       at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:113)
       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
       at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:397)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:184)
       at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
       at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85)
       at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
       at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
       at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
       at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:44)
       at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
       at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
       at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
       at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:60)
       at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
       at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:68)
       at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
       at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:216)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:184)
       at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:276)
       at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
       at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
       at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:240)
       at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:179)
       at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
       at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:73)
       at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:182)
       at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
       at com.sun.enterprise.web.VirtualServerPipeline.invoke(VirtualServerPipeline.java:120)
       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
       at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)
       at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
       at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
       at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
       at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:239)
       at com.sun.enterprise.web.connector.grizzly.ProcessorTask.invokeAdapter(ProcessorTask.java:667)
       at com.sun.enterprise.web.connector.grizzly.ProcessorTask.processNonBlocked(ProcessorTask.java:574)
       at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:844)
       at com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask(ReadTask.java:287)
       at com.sun.enterprise.web.connector.grizzly.ReadTask.doTask(ReadTask.java:212)
       at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
       at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:75)
      Caused by: java.lang.IllegalArgumentException: Not an entity class: datassist.payroll.entity.Category
       at org.jboss.seam.Entity.forClass(Entity.java:208)
       at org.jboss.seam.persistence.PersistenceProvider.getPrePersistMethod(PersistenceProvider.java:159)
       at org.jboss.seam.security.Identity.checkEntityPermission(Identity.java:681)
       at org.jboss.seam.security.HibernateSecurityInterceptor.onSave(HibernateSecurityInterceptor.java:73)
       at org.hibernate.event.def.AbstractSaveEventListener.substituteValuesIfNecessary(AbstractSaveEventListener.java:394)
       at org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:270)
       at org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:181)
       at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:121)
       at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:187)
       at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:172)
       at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:94)
       at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
       at org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:507)
       at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:499)
       at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:495)
       at org.jboss.seam.persistence.HibernateSessionProxy.saveOrUpdate(HibernateSessionProxy.java:370)
       at datassist.payroll.action.CategoryAction.save(CategoryAction.java:131)
       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 org.jboss.seam.util.Reflections.invoke(Reflections.java:21)
       at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
       at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
       at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:46)
       at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
       at org.jboss.seam.persistence.ManagedEntityIdentityInterceptor.aroundInvoke(ManagedEntityIdentityInterceptor.java:48)
       at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
       at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:31)
       at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
       at org.jboss.seam.core.ConversationInterceptor.aroundInvoke(ConversationInterceptor.java:56)
       at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
       at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:42)
       at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
       at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:106)
       at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:155)
       at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:91)
       at datassist.payroll.action.CategoryAction_$$_javassist_2.save(CategoryAction_$$_javassist_2.java)
       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 org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:328)
       at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:341)
       at org.jboss.el.parser.AstPropertySuffix.invoke(AstPropertySuffix.java:58)
       at org.jboss.el.parser.AstValue.invoke(AstValue.java:96)
       at org.jboss.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
       at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)
       at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:77)
       ... 51 more
      


      Category is a mapped class and previously in the log is:
      ...
      Mapping class: datassist.payroll.entity.Item -> Item
      Mapping union-subclass: datassist.payroll.entity.Category -> Category
      Mapping union-subclass: datassist.payroll.entity.Unit -> Unit
      ...
      

      That code worked before migration.