2 Replies Latest reply on Jul 1, 2008 5:51 PM by jesse

    Empty Search Results on TableList

    jesse

      I have created a few projects in seam that work great, however, I just ran into a situation where it seemed to generate fine however, when opening in the browser the page appears fine but the data list below the search parameters is empty.  There are 10 rows in the table and there are 10 rows on the screen but the rows are all empty.


      The other table's data appears fine.  Has anyone else ran into this situation?




      jboss-4.2.2.GA
      jboss-seam-2.0.2.SP1



      C:\junk>seam generate
      Buildfile: C:\jboss-seam-2.0.2.SP1\seam-gen\build.xml
      
      init:
      
      init-properties:
           [echo] C:/jboss-4.2.2.GA
      
      validate-workspace:
      
      validate-project:
      
      init-generate:
      
      generate-model:
           [echo] Reverse engineering database using JDBC driver C:\Program Files\webMethods7\common\lib\ojdbc14.jar
           [echo] project=C:/junk/msdsadmin
           [echo] model=com.mydomain.msdsadmin
      [hibernate] Executing Hibernate Tool with a JDBC Configuration (for reverse engineering)
      [hibernate] 1. task: hbm2java (Generates a set of .java files)
      [hibernate] Jul 1, 2008 8:57:39 AM org.hibernate.cfg.Environment <clinit>
      [hibernate] INFO: Hibernate 3.2.4.sp1
      [hibernate] Jul 1, 2008 8:57:39 AM org.hibernate.cfg.Environment <clinit>
      [hibernate] INFO: hibernate.properties not found
      [hibernate] Jul 1, 2008 8:57:39 AM org.hibernate.cfg.Environment buildBytecodeProvider
      [hibernate] INFO: Bytecode provider name : cglib
      [hibernate] Jul 1, 2008 8:57:39 AM org.hibernate.cfg.Environment <clinit>
      [hibernate] INFO: using JDK 1.4 java.sql.Timestamp handling
      [hibernate] Jul 1, 2008 8:57:39 AM org.hibernate.cfg.reveng.OverrideRepository addFile
      [hibernate] INFO: Override file: C:\junk\msdsadmin\resources\seam-gen.reveng.xml
      [hibernate] Jul 1, 2008 8:57:39 AM org.hibernate.connection.DriverManagerConnectionProvider configure
      [hibernate] INFO: Using Hibernate built-in connection pool (not for production use!)
      [hibernate] Jul 1, 2008 8:57:39 AM org.hibernate.connection.DriverManagerConnectionProvider configure
      [hibernate] INFO: Hibernate connection pool size: 20
      [hibernate] Jul 1, 2008 8:57:39 AM org.hibernate.connection.DriverManagerConnectionProvider configure
      [hibernate] INFO: autocommit mode: false
      [hibernate] Jul 1, 2008 8:57:39 AM org.hibernate.connection.DriverManagerConnectionProvider configure
      [hibernate] INFO: using driver: oracle.jdbc.driver.OracleDriver at URL: jdbc:oracle:thin:@<database>:1521:apexd
      b
      [hibernate] Jul 1, 2008 8:57:39 AM org.hibernate.connection.DriverManagerConnectionProvider configure
      [hibernate] INFO: connection properties: {user=dotcomcm, password=****}
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: RDBMS: Oracle, version: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
      [hibernate] With the Partitioning, OLAP and Data Mining options
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: JDBC driver: Oracle JDBC driver, version: 10.2.0.1.0
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.dialect.Dialect <init>
      [hibernate] INFO: Using dialect: org.hibernate.dialect.OracleDialect
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.transaction.TransactionFactoryFactory buildTransactionFactory
      [hibernate] INFO: Using default transaction strategy (direct JDBC transactions)
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.transaction.TransactionManagerLookupFactory getTransactionManagerLookup
      [hibernate] INFO: No TransactionManagerLookup configured (in JTA environment, use of read-write or transactional second-level
       cache is not recommended)
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Automatic flush during beforeCompletion(): disabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Automatic session close at end of transaction: disabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: JDBC batch size: 15
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: JDBC batch updates for versioned data: disabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Scrollable result sets: enabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: JDBC3 getGeneratedKeys(): disabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Connection release mode: auto
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Default schema: DOTCOMCM
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Default batch fetch size: 1
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Generate SQL with comments: disabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Order SQL updates by primary key: disabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Order SQL inserts for batching: disabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory createQueryTranslatorFactory
      [hibernate] INFO: Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.hql.ast.ASTQueryTranslatorFactory <init>
      [hibernate] INFO: Using ASTQueryTranslatorFactory
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Query language substitutions: {}
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: JPA-QL strict compliance: disabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Second-level cache: enabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Query cache: disabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory createCacheProvider
      [hibernate] INFO: Cache provider: org.hibernate.cache.HashtableCacheProvider
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Optimize cache for minimal puts: disabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Structured second-level cache entries: disabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Statistics: disabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Deleted entity synthetic identifier rollback: disabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Default entity-mode: pojo
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.SettingsFactory buildSettings
      [hibernate] INFO: Named query checking : enabled
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.reveng.dialect.OracleMetaDataDialect$1 convertRow
      [hibernate] INFO: {TABLE_NAME=AV_MSDS_INFO, REMARKS=null, TABLE_TYPE=TABLE, TABLE_SCHEM=DOTCOMCM, TABLE_CAT=null}
      [hibernate] Jul 1, 2008 8:57:43 AM org.hibernate.cfg.reveng.dialect.OracleMetaDataDialect$1 convertRow
      [hibernate] INFO: {TABLE_NAME=AV_MSDS_PN, REMARKS=null, TABLE_TYPE=TABLE, TABLE_SCHEM=DOTCOMCM, TABLE_CAT=null}
      [hibernate] Jul 1, 2008 8:57:45 AM org.hibernate.cfg.reveng.JDBCReader processPrimaryKey
      [hibernate] WARNING: The JDBC driver didn't report any primary key columns in AV_MSDS_INFO. Asking rev.eng. strategy
      [hibernate] Jul 1, 2008 8:57:45 AM org.hibernate.cfg.reveng.JDBCReader processPrimaryKey
      [hibernate] WARNING: Rev.eng. strategy did not report any primary key columns for AV_MSDS_INFO
      [hibernate] Jul 1, 2008 8:57:47 AM org.hibernate.cfg.reveng.JDBCReader processPrimaryKey
      [hibernate] WARNING: The JDBC driver didn't report any primary key columns in AV_MSDS_PN. Asking rev.eng. strategy
      [hibernate] Jul 1, 2008 8:57:47 AM org.hibernate.cfg.reveng.JDBCReader processPrimaryKey
      [hibernate] WARNING: Rev.eng. strategy did not report any primary key columns for AV_MSDS_PN
      [hibernate] Jul 1, 2008 8:57:49 AM org.hibernate.connection.DriverManagerConnectionProvider close
      [hibernate] INFO: cleaning up connection pool: jdbc:oracle:thin:@orcl-prd-3.aviallinc.com:1521:apexdb
      [hibernate] Jul 1, 2008 8:57:49 AM org.hibernate.tool.Version <clinit>
      [hibernate] INFO: Hibernate Tools 3.2.0.CR1
      [javaformatter] Java formatting of 4 files completed. Skipped 0 file(s).
      
      generate-ui:
           [echo] Building project 'msdsadmin' to generate views and controllers
      
      init:
          [mkdir] Created dir: C:\junk\msdsadmin\exploded-archives\msdsadmin.jar
          [mkdir] Created dir: C:\junk\msdsadmin\exploded-archives\msdsadmin.ear
          [mkdir] Created dir: C:\junk\msdsadmin\exploded-archives\msdsadmin.war
          [mkdir] Created dir: C:\junk\msdsadmin\dist
      
      compile:
          [javac] Compiling 5 source files to C:\junk\msdsadmin\exploded-archives\msdsadmin.jar
      
      copyclasses:
      
      jar:
           [copy] Copying 2 files to C:\junk\msdsadmin\exploded-archives\msdsadmin.jar
           [copy] Copying 1 file to C:\junk\msdsadmin\exploded-archives\msdsadmin.jar\META-INF
           [copy] Copying 1 file to C:\junk\msdsadmin\exploded-archives\msdsadmin.jar\META-INF
           [copy] Copying 1 file to C:\junk\msdsadmin\exploded-archives\msdsadmin.jar
      [hibernate] Executing Hibernate Tool with a JPA Configuration
      [hibernate] 1. task: generic exportertemplate: view/list.xhtml.ftl
      [hibernate] Jul 1, 2008 8:57:52 AM org.hibernate.cfg.annotations.Version <clinit>
      [hibernate] INFO: Hibernate Annotations 3.3.0.GA
      [hibernate] Jul 1, 2008 8:57:52 AM org.hibernate.ejb.Version <clinit>
      [hibernate] INFO: Hibernate EntityManager 3.3.1.GA
      [hibernate] Jul 1, 2008 8:57:52 AM org.hibernate.cfg.AnnotationBinder bindClass
      [hibernate] INFO: Binding entity from annotated class: com.mydomain.msdsadmin.AvMsdsInfo
      [hibernate] Jul 1, 2008 8:57:52 AM org.hibernate.cfg.annotations.EntityBinder bindTable
      [hibernate] INFO: Bind entity com.mydomain.msdsadmin.AvMsdsInfo on table AV_MSDS_INFO
      [hibernate] Jul 1, 2008 8:57:52 AM org.hibernate.cfg.AnnotationBinder bindClass
      [hibernate] INFO: Binding entity from annotated class: com.mydomain.msdsadmin.AvMsdsPn
      [hibernate] Jul 1, 2008 8:57:52 AM org.hibernate.cfg.annotations.EntityBinder bindTable
      [hibernate] INFO: Bind entity com.mydomain.msdsadmin.AvMsdsPn on table AV_MSDS_PN
      [hibernate] Jul 1, 2008 8:57:53 AM org.hibernate.validator.Version <clinit>
      [hibernate] INFO: Hibernate Validator 3.0.0.GA
      [hibernate] 2. task: generic exportertemplate: view/view.xhtml.ftl
      [hibernate] 3. task: generic exportertemplate: view/view.page.xml.ftl
      [hibernate] 4. task: generic exportertemplate: view/edit.xhtml.ftl
      [hibernate] 5. task: generic exportertemplate: view/edit.page.xml.ftl
      [hibernate] 6. task: generic exportertemplate: src/EntityList.java.ftl
      [hibernate] 7. task: generic exportertemplate: view/list.page.xml.ftl
      [hibernate] 8. task: generic exportertemplate: src/EntityHome.java.ftl
      [hibernate] 9. task: generic exportertemplate: view/layout/menu.xhtml.ftl
      [javaformatter] Java formatting of 5 files completed. Skipped 0 file(s).
           [echo] Type 'seam restart' and go to http://localhost:8080/msdsadmin
      
      generate:
      
      BUILD SUCCESSFUL
      Total time: 15 seconds


        • 1. Re: Empty Search Results on TableList
          admin.admin.email.tld

          post the xhtml, action SFSB/POJO and entities in question...


          also scan the server.log for exceptions...

          • 2. Re: Empty Search Results on TableList
            jesse

            Thanks Arbi,


            Below is the error I see after restarting and loading:


            10:39:02,910 INFO  [STDOUT] Hibernate: 
                select
                    * 
                from
                    ( select
                        avmsdsinfo0_.FILE_NAME as FILE1_0_,
                        avmsdsinfo0_.CREATION_TIME as CREATION2_0_,
                        avmsdsinfo0_.VENDOR_NAME as VENDOR3_0_,
                        avmsdsinfo0_.MSDS_ID as MSDS4_0_,
                        avmsdsinfo0_.MODIFIED_DATE as MODIFIED5_0_,
                        avmsdsinfo0_.AVIALLPN as AVIALLPN0_,
                        avmsdsinfo0_.UNCODE as UNCODE0_,
                        avmsdsinfo0_.SHORTDESC as SHORTDESC0_,
                        avmsdsinfo0_.ADDITIONAL_PN as ADDITIONAL9_0_,
                        avmsdsinfo0_.PO_LIST as PO10_0_,
                        avmsdsinfo0_.LOT_LIST as LOT11_0_,
                        avmsdsinfo0_.KIT as KIT0_,
                        avmsdsinfo0_.LANGUAGE_ID as LANGUAGE13_0_,
                        avmsdsinfo0_.DOCUMENT_DATE as DOCUMENT14_0_,
                        avmsdsinfo0_.OLD_MSDS_NAME_LIST as OLD15_0_,
                        avmsdsinfo0_.VENDOR_PART_NBR as VENDOR16_0_,
                        avmsdsinfo0_.VENDOR_NBR as VENDOR17_0_,
                        avmsdsinfo0_.VENDOR_MFG_CODE as VENDOR18_0_,
                        avmsdsinfo0_.VENDOR_PURCHASE_LOCATION as VENDOR19_0_,
                        avmsdsinfo0_.HMIS_HEALTH_HAZ as HMIS20_0_,
                        avmsdsinfo0_.HMIS_FLAMMABLE as HMIS21_0_,
                        avmsdsinfo0_.HMIS_REACTIVITY as HMIS22_0_,
                        avmsdsinfo0_.HMIS_PERSONAL_PROT as HMIS23_0_,
                        avmsdsinfo0_.COMMENTS as COMMENTS0_ 
                    from
                        DOTCOMCM.AV_MSDS_INFO avmsdsinfo0_ ) 
                where
                    rownum <= ?
            10:39:49,129 ERROR [STDERR] Jul 1, 2008 10:39:49 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
            INFO: Added Library from: jar:file:/C:/jboss-4.2.2.GA/server/default/deploy/msdsadmin.ear/msdsadmin.war/WEB-INF/lib/jboss-seam-mail.jar!/META-INF/seam-mail.taglib.xml
            10:39:49,145 ERROR [STDERR] Jul 1, 2008 10:39:49 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
            INFO: Added Library from: jar:file:/C:/jboss-4.2.2.GA/server/default/deploy/msdsadmin.ear/msdsadmin.war/WEB-INF/lib/jboss-seam-pdf.jar!/META-INF/seam-pdf.taglib.xml
            10:39:49,145 ERROR [STDERR] Jul 1, 2008 10:39:49 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
            INFO: Added Library from: jar:file:/C:/jboss-4.2.2.GA/server/default/deploy/msdsadmin.ear/msdsadmin.war/WEB-INF/lib/jboss-seam-ui.jar!/META-INF/s.taglib.xml
            10:39:49,145 ERROR [STDERR] Jul 1, 2008 10:39:49 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
            INFO: Added Library from: jar:file:/C:/jboss-4.2.2.GA/server/default/deploy/msdsadmin.ear/msdsadmin.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jsf-core.taglib.xml
            10:39:49,145 ERROR [STDERR] Jul 1, 2008 10:39:49 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
            INFO: Added Library from: jar:file:/C:/jboss-4.2.2.GA/server/default/deploy/msdsadmin.ear/msdsadmin.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jsf-html.taglib.xml
            10:39:49,145 ERROR [STDERR] Jul 1, 2008 10:39:49 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
            INFO: Added Library from: jar:file:/C:/jboss-4.2.2.GA/server/default/deploy/msdsadmin.ear/msdsadmin.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jsf-ui.taglib.xml
            10:39:49,160 ERROR [STDERR] Jul 1, 2008 10:39:49 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
            INFO: Added Library from: jar:file:/C:/jboss-4.2.2.GA/server/default/deploy/msdsadmin.ear/msdsadmin.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jstl-core.taglib.xml
            10:39:49,160 ERROR [STDERR] Jul 1, 2008 10:39:49 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
            INFO: Added Library from: jar:file:/C:/jboss-4.2.2.GA/server/default/deploy/msdsadmin.ear/msdsadmin.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jstl-fn.taglib.xml
            10:39:49,160 ERROR [STDERR] Jul 1, 2008 10:39:49 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
            INFO: Added Library from: jar:file:/C:/jboss-4.2.2.GA/server/default/deploy/msdsadmin.ear/msdsadmin.war/WEB-INF/lib/richfaces-ui.jar!/META-INF/a4j.taglib.xml
            10:39:49,160 ERROR [STDERR] Jul 1, 2008 10:39:49 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
            INFO: Added Library from: jar:file:/C:/jboss-4.2.2.GA/server/default/deploy/msdsadmin.ear/msdsadmin.war/WEB-INF/lib/richfaces-ui.jar!/META-INF/ajax4jsf.taglib.xml
            10:39:49,160 ERROR [STDERR] Jul 1, 2008 10:39:49 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
            INFO: Added Library from: jar:file:/C:/jboss-4.2.2.GA/server/default/deploy/msdsadmin.ear/msdsadmin.war/WEB-INF/lib/richfaces-ui.jar!/META-INF/rich.taglib.xml
            10:39:49,176 ERROR [STDERR] Jul 1, 2008 10:39:49 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
            INFO: Added Library from: jar:file:/C:/jboss-4.2.2.GA/server/default/deploy/msdsadmin.ear/msdsadmin.war/WEB-INF/lib/richfaces-ui.jar!/META-INF/richfaces.taglib.xml




            Here is the xhtml:


            <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
                                         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
            
            <ui:composition xmlns="http://www.w3.org/1999/xhtml"
                            xmlns:s="http://jboss.com/products/seam/taglib"
                            xmlns:ui="http://java.sun.com/jsf/facelets"
                            xmlns:f="http://java.sun.com/jsf/core"
                            xmlns:h="http://java.sun.com/jsf/html"
                            xmlns:rich="http://richfaces.org/rich"
                            template="layout/template.xhtml">
                                   
            <ui:define name="body">
                
                <h:messages globalOnly="true" styleClass="message" id="globalMessages"/>
                
                <rich:panel>
                    <f:facet name="header">AvMsdsInfo</f:facet>
            
            
                    <s:decorate id="additionalPn" template="layout/display.xhtml">
                        <ui:define name="label">additionalPn</ui:define>
                        #{avMsdsInfoHome.instance.id.additionalPn}
                    </s:decorate>
            
                    <s:decorate id="aviallpn" template="layout/display.xhtml">
                        <ui:define name="label">aviallpn</ui:define>
                        #{avMsdsInfoHome.instance.id.aviallpn}
                    </s:decorate>
            
                    <s:decorate id="comments" template="layout/display.xhtml">
                        <ui:define name="label">comments</ui:define>
                        #{avMsdsInfoHome.instance.id.comments}
                    </s:decorate>
            
                    <s:decorate id="creationTime" template="layout/display.xhtml">
                        <ui:define name="label">creationTime</ui:define>
                        <h:outputText value="#{avMsdsInfoHome.instance.id.creationTime}">
                            <s:convertDateTime type="date" dateStyle="short"/>
                        </h:outputText>
                    </s:decorate>
            
                    <s:decorate id="documentDate" template="layout/display.xhtml">
                        <ui:define name="label">documentDate</ui:define>
                        <h:outputText value="#{avMsdsInfoHome.instance.id.documentDate}">
                            <s:convertDateTime type="date" dateStyle="short"/>
                        </h:outputText>
                    </s:decorate>
            
                    <s:decorate id="fileName" template="layout/display.xhtml">
                        <ui:define name="label">fileName</ui:define>
                        #{avMsdsInfoHome.instance.id.fileName}
                    </s:decorate>
            
                    <s:decorate id="hmisFlammable" template="layout/display.xhtml">
                        <ui:define name="label">hmisFlammable</ui:define>
                        #{avMsdsInfoHome.instance.id.hmisFlammable}
                    </s:decorate>
            
                    <s:decorate id="hmisHealthHaz" template="layout/display.xhtml">
                        <ui:define name="label">hmisHealthHaz</ui:define>
                        #{avMsdsInfoHome.instance.id.hmisHealthHaz}
                    </s:decorate>
            
                    <s:decorate id="hmisPersonalProt" template="layout/display.xhtml">
                        <ui:define name="label">hmisPersonalProt</ui:define>
                        #{avMsdsInfoHome.instance.id.hmisPersonalProt}
                    </s:decorate>
            
                    <s:decorate id="hmisReactivity" template="layout/display.xhtml">
                        <ui:define name="label">hmisReactivity</ui:define>
                        #{avMsdsInfoHome.instance.id.hmisReactivity}
                    </s:decorate>
            
                    <s:decorate id="kit" template="layout/display.xhtml">
                        <ui:define name="label">kit</ui:define>
                        #{avMsdsInfoHome.instance.id.kit}
                    </s:decorate>
            
                    <s:decorate id="languageId" template="layout/display.xhtml">
                        <ui:define name="label">languageId</ui:define>
                        #{avMsdsInfoHome.instance.id.languageId}
                    </s:decorate>
            
                    <s:decorate id="lotList" template="layout/display.xhtml">
                        <ui:define name="label">lotList</ui:define>
                        #{avMsdsInfoHome.instance.id.lotList}
                    </s:decorate>
            
                    <s:decorate id="modifiedDate" template="layout/display.xhtml">
                        <ui:define name="label">modifiedDate</ui:define>
                        <h:outputText value="#{avMsdsInfoHome.instance.id.modifiedDate}">
                            <s:convertDateTime type="date" dateStyle="short"/>
                        </h:outputText>
                    </s:decorate>
            
                    <s:decorate id="msdsId" template="layout/display.xhtml">
                        <ui:define name="label">msdsId</ui:define>
                        #{avMsdsInfoHome.instance.id.msdsId}
                    </s:decorate>
            
                    <s:decorate id="oldMsdsNameList" template="layout/display.xhtml">
                        <ui:define name="label">oldMsdsNameList</ui:define>
                        #{avMsdsInfoHome.instance.id.oldMsdsNameList}
                    </s:decorate>
            
                    <s:decorate id="poList" template="layout/display.xhtml">
                        <ui:define name="label">poList</ui:define>
                        #{avMsdsInfoHome.instance.id.poList}
                    </s:decorate>
            
                    <s:decorate id="shortdesc" template="layout/display.xhtml">
                        <ui:define name="label">shortdesc</ui:define>
                        #{avMsdsInfoHome.instance.id.shortdesc}
                    </s:decorate>
            
                    <s:decorate id="uncode" template="layout/display.xhtml">
                        <ui:define name="label">uncode</ui:define>
                        #{avMsdsInfoHome.instance.id.uncode}
                    </s:decorate>
            
                    <s:decorate id="vendorMfgCode" template="layout/display.xhtml">
                        <ui:define name="label">vendorMfgCode</ui:define>
                        #{avMsdsInfoHome.instance.id.vendorMfgCode}
                    </s:decorate>
            
                    <s:decorate id="vendorName" template="layout/display.xhtml">
                        <ui:define name="label">vendorName</ui:define>
                        #{avMsdsInfoHome.instance.id.vendorName}
                    </s:decorate>
            
                    <s:decorate id="vendorNbr" template="layout/display.xhtml">
                        <ui:define name="label">vendorNbr</ui:define>
                        #{avMsdsInfoHome.instance.id.vendorNbr}
                    </s:decorate>
            
                    <s:decorate id="vendorPartNbr" template="layout/display.xhtml">
                        <ui:define name="label">vendorPartNbr</ui:define>
                        #{avMsdsInfoHome.instance.id.vendorPartNbr}
                    </s:decorate>
            
                    <s:decorate id="vendorPurchaseLocation" template="layout/display.xhtml">
                        <ui:define name="label">vendorPurchaseLocation</ui:define>
                        #{avMsdsInfoHome.instance.id.vendorPurchaseLocation}
                    </s:decorate>
            
                    <div style="clear:both"/>
                    
                </rich:panel>
                
                <div class="actionButtons">      
            
                    <s:button view="/AvMsdsInfoEdit.xhtml" 
                                id="edit" 
                             value="Edit"/>
            
                    <s:button view="/#{empty avMsdsInfoFrom ? 'AvMsdsInfoList' : avMsdsInfoFrom}.xhtml"
                                id="done"
                             value="Done"/>
            
                </div>
            
            </ui:define>
            
            </ui:composition>
            



            And here is the Home:


            package com.mydomain.msdsadmin;
            
            import com.mydomain.msdsadmin.*;
            import java.util.Date;
            import org.jboss.seam.annotations.Name;
            import org.jboss.seam.framework.EntityHome;
            
            @Name("avMsdsInfoHome")
            public class AvMsdsInfoHome extends EntityHome<AvMsdsInfo> {
            
                    public void setAvMsdsInfoId(AvMsdsInfoId id) {
                            setId(id);
                    }
            
                    public AvMsdsInfoId getAvMsdsInfoId() {
                            return (AvMsdsInfoId) getId();
                    }
            
                    public AvMsdsInfoHome() {
                            setAvMsdsInfoId(new AvMsdsInfoId());
                    }
            
                    @Override
                    public boolean isIdDefined() {
                            if (getAvMsdsInfoId().getAdditionalPn() == null
                                            || "".equals(getAvMsdsInfoId().getAdditionalPn()))
                                    return false;
                            if (getAvMsdsInfoId().getAviallpn() == null
                                            || "".equals(getAvMsdsInfoId().getAviallpn()))
                                    return false;
                            if (getAvMsdsInfoId().getComments() == null
                                            || "".equals(getAvMsdsInfoId().getComments()))
                                    return false;
                            if (getAvMsdsInfoId().getCreationTime() == null)
                                    return false;
                            if (getAvMsdsInfoId().getDocumentDate() == null)
                                    return false;
                            if (getAvMsdsInfoId().getFileName() == null
                                            || "".equals(getAvMsdsInfoId().getFileName()))
                                    return false;
                            if (getAvMsdsInfoId().getHmisFlammable() == null
                                            || "".equals(getAvMsdsInfoId().getHmisFlammable()))
                                    return false;
                            if (getAvMsdsInfoId().getHmisHealthHaz() == null
                                            || "".equals(getAvMsdsInfoId().getHmisHealthHaz()))
                                    return false;
                            if (getAvMsdsInfoId().getHmisPersonalProt() == null
                                            || "".equals(getAvMsdsInfoId().getHmisPersonalProt()))
                                    return false;
                            if (getAvMsdsInfoId().getHmisReactivity() == null
                                            || "".equals(getAvMsdsInfoId().getHmisReactivity()))
                                    return false;
                            if (getAvMsdsInfoId().getKit() == null
                                            || "".equals(getAvMsdsInfoId().getKit()))
                                    return false;
                            if (getAvMsdsInfoId().getLanguageId() == null
                                            || "".equals(getAvMsdsInfoId().getLanguageId()))
                                    return false;
                            if (getAvMsdsInfoId().getLotList() == null
                                            || "".equals(getAvMsdsInfoId().getLotList()))
                                    return false;
                            if (getAvMsdsInfoId().getModifiedDate() == null)
                                    return false;
                            if (getAvMsdsInfoId().getMsdsId() == null
                                            || "".equals(getAvMsdsInfoId().getMsdsId()))
                                    return false;
                            if (getAvMsdsInfoId().getOldMsdsNameList() == null
                                            || "".equals(getAvMsdsInfoId().getOldMsdsNameList()))
                                    return false;
                            if (getAvMsdsInfoId().getPoList() == null
                                            || "".equals(getAvMsdsInfoId().getPoList()))
                                    return false;
                            if (getAvMsdsInfoId().getShortdesc() == null
                                            || "".equals(getAvMsdsInfoId().getShortdesc()))
                                    return false;
                            if (getAvMsdsInfoId().getUncode() == null
                                            || "".equals(getAvMsdsInfoId().getUncode()))
                                    return false;
                            if (getAvMsdsInfoId().getVendorMfgCode() == null
                                            || "".equals(getAvMsdsInfoId().getVendorMfgCode()))
                                    return false;
                            if (getAvMsdsInfoId().getVendorName() == null
                                            || "".equals(getAvMsdsInfoId().getVendorName()))
                                    return false;
                            if (getAvMsdsInfoId().getVendorNbr() == null
                                            || "".equals(getAvMsdsInfoId().getVendorNbr()))
                                    return false;
                            if (getAvMsdsInfoId().getVendorPartNbr() == null
                                            || "".equals(getAvMsdsInfoId().getVendorPartNbr()))
                                    return false;
                            if (getAvMsdsInfoId().getVendorPurchaseLocation() == null
                                            || "".equals(getAvMsdsInfoId().getVendorPurchaseLocation()))
                                    return false;
            
                            return true;
                    }
            
                    @Override
                    protected AvMsdsInfo createInstance() {
                            AvMsdsInfo avMsdsInfo = new AvMsdsInfo();
                            avMsdsInfo.setId(new AvMsdsInfoId());
                            return avMsdsInfo;
                    }
            
                    public void wire() {
                            getInstance();
                    }
            
                    public boolean isWired() {
                            return true;
                    }
            
                    public AvMsdsInfo getDefinedInstance() {
                            return isIdDefined() ? getInstance() : null;
                    }
            
            }