Problem: Generate Entities, xhtml files, isWired() funtion and foreign keys
pericles Mar 12, 2008 4:35 PMHi again,
I'm in blind alley with this error:
Exception during request processing: Caused by javax.servlet.ServletException with message: "#{permisosTipologiaHome.persist}: org.hibernate.validator.InvalidStateException: validation failed for: es.gematic.gucudo.entity.PermisosTipologia" javax.faces.webapp.FacesServlet.service(FacesServlet.java:256) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83) org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85) org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64) org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45) org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141) org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281) org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:60) org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58) org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:68) org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179) org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432) org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84) org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157) org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446) java.lang.Thread.run(Thread.java:619)
It was produced when the form generated by Seam Generate Entities is, I supose, charged.
<h:form id="permisosTipologia" styleClass="edit"> <rich:panel> <f:facet name="header">#{permisosTipologiaHome.managed ? messages['Edit']:messages['Add']} #{messages['PermissionType']}</f:facet> <s:decorate id="idTipologiaDecoration" template="layout/edit.xhtml"> <ui:define name="label">#{messages['idDocumentType']}</ui:define> <h:inputText id="idTipologia" required="true" disabled="#{permisosTipologiaHome.managed}" value="#{permisosTipologiaHome.instance.id.idTipologia}"> <a:support event="onblur" reRender="idTipologiaDecoration" bypassUpdates="true" ajaxSingle="true"/> </h:inputText> </s:decorate> <s:decorate id="idTipusDecoration" template="layout/edit.xhtml"> <ui:define name="label">#{messages['idPermissionType']}</ui:define> <h:inputText id="idTipus" required="true" disabled="#{permisosTipologiaHome.managed}" size="1" maxlength="1" value="#{permisosTipologiaHome.instance.id.idTipus}"> <a:support event="onblur" reRender="idTipusDecoration" bypassUpdates="true" ajaxSingle="true"/> </h:inputText> </s:decorate> <s:decorate id="idUsuariDecoration" template="layout/edit.xhtml"> <ui:define name="label">#{messages['idUser']}</ui:define> <h:inputTextarea id="idUsuari" disabled="#{permisosTipologiaHome.managed}" required="true" value="#{permisosTipologiaHome.instance.id.idUsuari}"/> </s:decorate> <div style="clear:both"> <span class="required">*</span> #{messages['requiredFields']} </div> </rich:panel> <div class="actionButtons"> <h:commandButton id="save" value="#{messages['Save']}" action="#{permisosTipologiaHome.persist}" disabled="#{!permisosTipologiaHome.wired}" rendered="#{!permisosTipologiaHome.managed}"/> <h:commandButton id="update" value="#{messages['Save']}" action="#{permisosTipologiaHome.update}" rendered="#{permisosTipologiaHome.managed}"/> <h:commandButton id="delete" value="#{messages['Delete']}" action="#{permisosTipologiaHome.remove}" immediate="true" rendered="#{permisosTipologiaHome.managed}"/> <s:button id="done" value="#{messages['Done']}" propagation="end" view="/PermisosTipologia.xhtml" rendered="#{permisosTipologiaHome.managed}"/> <s:button id="cancel" value="#{messages['Cancel']}" propagation="end" view="/#{empty permisosTipologiaFrom ? 'PermisosTipologiaList' : permisosTipologiaFrom}.xhtml" rendered="#{!permisosTipologiaHome.managed}"/> </div> </h:form>
The line that dont't work:
disabled="#{!permisosTipologiaHome.wired}"
This line disabled or not the save
button, in ALL the components ...Home.java generated by Seam Generated Entities in my project this line call to the next function.
public boolean isWired() { if (getInstance().getTypes() == null) return false; if (getInstance().getUsers() == null) return false; if (getInstance().getPermissionType() == null) return false; return true; }
Well, always in my project, all the components created with foreign keys has this problem, the button doesn't work and if I enable it and click it shows the error of the top of this post.
Anybody knows why?
Thank you very much.