11 Replies Latest reply on Aug 22, 2007 8:24 AM by demetrio812

    selectOneMenu problem

    demetrio812 Apprentice

      Hi, I have a seam-gen app, in the edit form I inserted the following code:

      <s:decorate template="layout/edit.xhtml">
       <ui:define name="label">Stato</ui:define>
       <h:selectOneMenu id="stato" value="#{articoloHome.instance.statoArticolo}" required="true">
       <s:selectItems value="#{articoloHelper.getStatiArticolo(articoloHome.instance.tipologiaArticolo.id)}" var="stato" label="#{stato.descrizione}" noSelectionLabel="Seleziona lo stato..."/>
       <s:convertEntity />
       </h:selectOneMenu>
      </s:decorate>
      


      It call the getStatiArticolo function that is in articoloHelper (Seam POJO, Scope=CONVERSATION):

       private List<StatoArticolo> statiArticolo;
      
       public List<StatoArticolo> getStatiArticolo(int idTipologia)
       {
       if (statiArticolo==null) {
       statiArticolo = (List<StatoArticolo>) entityManager.createQuery(
       "from StatoArticolo sa WHERE sa.tipologiaArticolo.id = "+idTipologia+" ORDER BY sa.descrizione").getResultList();
       }
      
       return statiArticolo;
       }
      


      The menu and its items are rendered fine, the selected item works, but when I click on submit I got a strange error:



      java.lang.IllegalArgumentException: Unknown entity: com.novaware.unica.StatoArticolo_$$_javassist_5
      at org.hibernate.ejb.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java:185)
      at org.jboss.seam.persistence.EntityManagerProxy.find(EntityManagerProxy.java:85)
      at org.jboss.seam.framework.EntityIdentifier.find(EntityIdentifier.java:26)
      at org.jboss.seam.ui.converter.EntityConverterStore.get(EntityConverterStore.java:43)
      at org.jboss.seam.ui.converter.EntityConverter.getAsObject(EntityConverter.java:81)
      at org.jboss.seam.ui.converter.PrioritizableConverter.getAsObject(PrioritizableConverter.java:61)
      at org.jboss.seam.ui.converter.ConverterChain.getAsObject(ConverterChain.java:107)
      at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getConvertedValue(HtmlBasicInputRenderer.java:152)
      at com.sun.faces.renderkit.html_basic.MenuRenderer.convertSelectOneValue(MenuRenderer.java:197)
      at com.sun.faces.renderkit.html_basic.MenuRenderer.getConvertedValue(MenuRenderer.java:359)
      at javax.faces.component.UIInput.getConvertedValue(UIInput.java:934)
      at javax.faces.component.UIInput.validate(UIInput.java:860)
      at javax.faces.component.UIInput.executeValidate(UIInput.java:1065)
      at javax.faces.component.UIInput.processValidators(UIInput.java:666)
      at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1033)
      at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1033)
      at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1033)
      at javax.faces.component.UIForm.processValidators(UIForm.java:229)
      at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1033)
      at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:662)
      at org.ajax4jsf.component.AjaxViewRoot.access$201(AjaxViewRoot.java:59)
      at org.ajax4jsf.component.AjaxViewRoot$3.invokeRoot(AjaxViewRoot.java:321)
      at org.ajax4jsf.context.JsfOneOneInvoker.invokeOnRegionOrRoot(JsfOneOneInvoker.java:56)
      at org.ajax4jsf.context.AjaxContextImpl.invokeOnRegionOrRoot(AjaxContextImpl.java:171)
      at org.ajax4jsf.component.AjaxViewRoot.processValidators(AjaxViewRoot.java:335)
      at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:100)
      at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
      at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
      at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:63)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:87)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:63)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:46)
      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:40)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:140)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
      at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
      at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
      at java.lang.Thread.run(Thread.java:595)
      Caused by: org.hibernate.MappingException: Unknown entity: com.novaware.unica.StatoArticolo_$$_javassist_5
      at org.hibernate.impl.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:550)
      at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:68)
      at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:878)
      at org.hibernate.impl.SessionImpl.get(SessionImpl.java:815)
      at org.hibernate.impl.SessionImpl.get(SessionImpl.java:808)
      at org.hibernate.ejb.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java:174)
      ... 66 more


      But StatoArticolo is a working entity (the form for example is showed well)...

      what can it be?

      Thanks

      Demetrio Filocamo