[jboss-cvs] jboss-seam/seam-gen/icefaces/view ...

Michael Yuan michael.yuan at jboss.com
Fri Sep 14 22:30:00 EDT 2007


  User: myuan   
  Date: 07/09/14 22:30:00

  Added:       seam-gen/icefaces/view                      action.xhtml
                        conversation.xhtml edit.page.xml.ftl edit.xhtml
                        edit.xhtml.ftl editproperty.xhtml.ftl error.xhtml
                        form.xhtml home.xhtml index.html list.page.xml.ftl
                        list.xhtml list.xhtml.ftl login.page.xml
                        login.xhtml page.xhtml param.xml.ftl query.xhtml
                        view.page.xml.ftl view.xhtml.ftl
                        viewproperty.xhtml.ftl
  Log:
  icefaces integration support
  
  Revision  Changes    Path
  1.3       +17 -14    jboss-seam/seam-gen/icefaces/view/action.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: action.xhtml
  ===================================================================
  RCS file: action.xhtml
  diff -N action.xhtml
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ action.xhtml	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,37 @@
  +<!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:ice="http://www.icesoft.com/icefaces/component"  
  +                template="layout/template.xhtml">
  +                       
  +<ui:define name="body">
  +
  +    <h:messages globalOnly="true" styleClass="message"/>
  +
  +  <ice:form id="@componentName at Form">
  +     <ice:panelGroup  id="actionFormId" styleClass="formBorderHighlight">
  +          <table width="100%" border="0" cellspacing="0" cellpadding="0">
  +              <tr>
  +                  <td class="iceDatTblColHdr2">
  +                      	<ice:outputText id="action at pageName@Id" value="@pageName@" />
  +                  </td>
  +              </tr>
  +          </table>
  +          
  +          <div class="actionButtons">
  +            <ice:commandButton id="@methodName@" value="@methodName@!" 
  +                             action="#{@componentName at .@methodName@}"/>     			  
  +          </div>
  +
  +        
  +    </ice:panelGroup>
  +  </ice:form>
  +</ui:define>
  +
  +</ui:composition>
  +
  +
  
  
  
  1.3       +16 -13    jboss-seam/seam-gen/icefaces/view/conversation.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: conversation.xhtml
  ===================================================================
  RCS file: conversation.xhtml
  diff -N conversation.xhtml
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ conversation.xhtml	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,49 @@
  +<!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"
  +                xmlns:h="http://java.sun.com/jsf/html"
  +		xmlns:ice="http://www.icesoft.com/icefaces/component"  
  +                template="layout/template.xhtml">
  +                       
  +<ui:define name="body">
  +
  +    <h:messages globalOnly="true" styleClass="message"/>
  +
  +<ice:form id="@componentName at Form">    
  +      <ice:panelGroup  id="conversationPanelId" styleClass="formBorderHighlight">
  +          <table width="100%" border="0" cellspacing="0" cellpadding="0">
  +              <tr>
  +                  <td class="iceDatTblColHdr2">
  +                      <ice:outputText id="conversation at componentName@Id" value="@pageName@" />
  +                  </td>
  +              </tr>
  +          </table>         
  +     </ice:panelGroup>
  +
  +     <div class="dialog">
  +            <div class="prop">
  +                <span class="name">Value</span>
  +                <span class="value">#{@componentName at .value}</span>
  +            </div>
  +      </div>
  +    
  +    
  +        <div class="actionButtons">
  +            <h:commandButton id="begin" value="Begin" 
  +                action="#{@componentName at .begin}"/>     			  
  +            <h:commandButton id="inc" value="Increment" 
  +                action="#{@componentName at .increment}"/>     			  
  +            <h:commandButton id="end" value="End" 
  +                action="#{@componentName at .end}"/>     			  
  +        </div>
  + </ice:form>
  +    
  +</ui:define>
  +
  +</ui:composition>
  +
  +
  +
  
  
  
  1.3       +12 -5     jboss-seam/seam-gen/icefaces/view/edit.page.xml.ftl
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: edit.page.xml.ftl
  ===================================================================
  RCS file: edit.page.xml.ftl
  diff -N edit.page.xml.ftl
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ edit.page.xml.ftl	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,54 @@
  +<?xml version="1.0" encoding="UTF-8"?>
  +
  +<#assign entityName = pojo.shortName>
  +<#assign componentName = util.lower(entityName)>
  +<#assign homeName = componentName + "Home">
  +<#assign masterPageName = entityName + "List">
  +<#assign pageName = entityName>
  +
  +<page xmlns="http://jboss.com/products/seam/pages"
  +
  +      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  +
  +      xsi:schemaLocation="http://jboss.com/products/seam/pages http://jboss.com/products/seam/pages-2.0.xsd"
  +
  +      no-conversation-view-id="/${masterPageName}.xhtml"
  +
  +      login-required="true">
  +
  +   
  +   <begin-conversation join="true"/>
  +   
  +   <action execute="${'#'}{${homeName}.wire}"/>
  +   
  +   <param name="${componentName}From"/>
  +<#assign idName = componentName + util.upper(pojo.identifierProperty.name)>
  +<#if c2j.isComponent(pojo.identifierProperty)>
  +<#foreach componentProperty in pojo.identifierProperty.value.propertyIterator>
  +<#assign cidName = componentName + util.upper(componentProperty.name)>
  +   <param name="${cidName}" value="${'#'}{${homeName}.${idName}.${componentProperty.name}}"/>
  +</#foreach>
  +<#else>
  +   <param name="${idName}" value="${'#'}{${homeName}.${idName}}"/>
  +</#if>
  +<#assign entities=util.set()>
  +<#if entities.add(pojo.shortName)>
  +<#include "param.xml.ftl">
  +</#if>
  +
  +   <navigation from-action="${'#'}{${homeName}.persist}">
  +       <end-conversation/>
  +       <redirect view-id="/${pageName}.xhtml"/>
  +   </navigation>
  +   
  +   <navigation from-action="${'#'}{${homeName}.update}">
  +       <end-conversation/>
  +       <redirect view-id="/${pageName}.xhtml"/>
  +   </navigation>
  +   
  +   <navigation from-action="${'#'}{${homeName}.remove}">
  +       <end-conversation/>
  +       <redirect view-id="/${masterPageName}.xhtml"/>
  +   </navigation>
  +   
  +</page>
  \ No newline at end of file
  
  
  
  1.3       +28 -20    jboss-seam/seam-gen/icefaces/view/edit.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: edit.xhtml
  ===================================================================
  RCS file: edit.xhtml
  diff -N edit.xhtml
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ edit.xhtml	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,57 @@
  +<!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:ice="http://www.icesoft.com/icefaces/component"  
  +                template="layout/template.xhtml">
  +                       
  +<ui:define name="body">
  +
  +    <h:messages globalOnly="true" styleClass="message"/>
  +    
  +    <ice:form id="@componentName at EditForm">
  +       <ice:panelGroup  id="edit at componentName@Id" styleClass="formBorderHighlight">
  +          <table width="100%" border="0" cellspacing="0" cellpadding="0">
  +              <tr>
  +                  <td class="iceDatTblColHdr2">
  +                      <ice:outputText id="edit at pagename@Id" value="@pagename@"/>/>
  +                  </td>
  +              </tr>
  +          </table>
  +	
  +            <s:decorate id="nameDecoration" template="layout/edit.xhtml">
  +                <ui:define name="label">Name</ui:define>
  +                <h:inputText id="name" required="true"
  +                             value="#{@homeName at .instance.name}"/>
  +            </s:decorate>
  +            
  +            <div style="clear:both"/>
  +       </ice:panelGroup>
  +
  +        <div class="actionButtons">
  +            <h:commandButton id="edit at homeName@save" 
  +                          value="Save" 
  +                         action="#{@homeName at .persist}"
  +                       rendered="#{!@homeName at .managed}"/>                   
  +            <h:commandButton id="edit at homeName@update" 
  +                          value="Save" 
  +                         action="#{@homeName at .update}"
  +                       rendered="#{@homeName at .managed}"/>                  
  +            <h:commandButton id="edit at homeName@delete" 
  +                          value="Delete" 
  +                         action="#{@homeName at .remove}"
  +                       rendered="#{@homeName at .managed}"/>
  +            <s:button propagation="end" 
  +                               id="edit at homeName@done" 
  +                            value="Done"
  +                             view="/@masterPageName at .xhtml"/>
  +        </div>
  +    </ice:form>
  +    
  +</ui:define>
  +
  +</ui:composition>
  +
  
  
  
  1.3       +44 -54    jboss-seam/seam-gen/icefaces/view/edit.xhtml.ftl
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: edit.xhtml.ftl
  ===================================================================
  RCS file: edit.xhtml.ftl
  diff -N edit.xhtml.ftl
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ edit.xhtml.ftl	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,249 @@
  +<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  +                             "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  +<#assign entityName = pojo.shortName>
  +<#assign componentName = util.lower(entityName)>
  +<#assign homeName = componentName + "Home">
  +<#assign masterPageName = entityName + "List">
  +<#assign pageName = entityName>
  +
  +<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:ice="http://www.icesoft.com/icefaces/component" 
  +                template="layout/template.xhtml">
  +                       
  +<ui:define name="body">
  +    
  +    <h:messages globalOnly="true" styleClass="message" id="globalMessages"/>
  +    
  +    <ice:form id="${componentName}editForm" styleClass="edit">
  +     <ice:panelGroup  id="edit${componentName}GroupId" styleClass="formBorderHighlight">
  +          <table width="100%" border="0" cellspacing="0" cellpadding="0">
  +              <tr>
  +                  <td class="iceDatTblColHdr2">
  +			    <ice:outputText id="editTextBoxId" value="Edit ${componentName}"/>
  +                  </td>
  +              </tr>
  +          </table>
  +
  +        <ice:panelGroup id="editPanelGroupId" styleClass="edit">		 
  +<#foreach property in pojo.allPropertiesIterator>
  +<#include "editproperty.xhtml.ftl">
  +</#foreach>
  +            <div style="clear:both">
  +                <span class="required">*</span> 
  +                required fields
  +            </div>
  +          </ice:panelGroup>
  +       </ice:panelGroup>
  +                  
  +       <div class="actionButtons">
  +        
  +            <h:commandButton id="save${homeName}" 
  +                          value="Save" 
  +                         action="${'#'}{${homeName}.persist}"
  +                       disabled="${'#'}{!${homeName}.wired}"
  +                       rendered="${'#'}{!${homeName}.managed}"/>  
  +                          			  
  +            <h:commandButton id="update${homeName}" 
  +                          value="Save" 
  +                         action="${'#'}{${homeName}.update}"
  +                       rendered="${'#'}{${homeName}.managed}"/>
  +                        			  
  +            <h:commandButton id="delete${homeName}" 
  +                          value="Delete" 
  +                         action="${'#'}{${homeName}.remove}"
  +                       rendered="${'#'}{${homeName}.managed}"/>
  +                    
  +            <s:button id="done${homeName}" 
  +                   value="Done"
  +             propagation="end"
  +                    view="/${pageName}.xhtml"
  +                rendered="${'#'}{${homeName}.managed}"/>
  +                
  +            <s:button id="cancel${homeName}" 
  +                   value="Cancel"
  +             propagation="end"
  +                    view="/${'#'}{empty ${componentName}From ? '${masterPageName}' : ${componentName}From}.xhtml"
  +                rendered="${'#'}{!${homeName}.managed}"/>
  +                
  +        </div>
  +        
  +    </ice:form>
  +<#assign hasAssociations=false>
  +<#foreach property in pojo.allPropertiesIterator>
  +<#if c2h.isManyToOne(property) || c2h.isOneToManyCollection(property)>
  +<#assign hasAssociations=true>
  +</#if>
  +</#foreach>
  +
  +<#if hasAssociations>
  + <ice:form id="form2${homeName}">  
  +        <ice:panelTabSet id="editPanelTab${homeName}Id" styleClass="componentPanelTabSetLayout" style="margin-bottom:5px;margin-top:10px;">
  +</#if>
  +<#foreach property in pojo.allPropertiesIterator>
  +<#if c2h.isManyToOne(property)>
  +<#assign parentPojo = c2j.getPOJOClass(cfg.getClassMapping(property.value.referencedEntityName))>
  +<#assign parentPageName = parentPojo.shortName>
  +<#assign parentName = util.lower(parentPojo.shortName)>
  +   
  +<#if property.optional>
  +	<ice:panelTab id="editTab${property.name}Id" label="${property.name}">
  +<#else>
  + 	<ice:panelTab id="editTab${property.name}Id" label="${property.name} *" >
  +</#if>
  +		<div class="association" id="${property.name}Parent">
  +    
  +        	<h:outputText id="edit${property.name}TextId" value="No ${property.name}" 
  +                   rendered="${'#'}{${homeName}.instance.${property.name} == null}"/>
  +       	<ice:dataTable var="${parentName}" 
  +                   value="${'#'}{${homeName}.instance.${property.name}}" 
  +                rendered="${'#'}{${homeName}.instance.${property.name} != null}"
  +              rowClasses="rvgRowOne,rvgRowTwo"
  +		  columnClasses="allCols"
  +                      id="edit${property.name}TableId">
  +<#foreach parentProperty in parentPojo.allPropertiesIterator>
  +<#if !c2h.isCollection(parentProperty) && !c2h.isManyToOne(parentProperty)>
  +<#if parentPojo.isComponent(parentProperty)>
  +<#foreach componentProperty in parentProperty.value.propertyIterator>
  +            <ice:column id="$editColumn${componentProperty.name}Id">
  +                <f:facet name="header">${componentProperty.name}</f:facet>
  +                ${'#'}{${parentName}.${parentProperty.name}.${componentProperty.name}}
  +            </ice:column>
  +</#foreach>
  +<#else>
  +            <ice:column id="$editColumn${parentProperty.name}Id">
  +                <f:facet name="header">${parentProperty.name}</f:facet>
  +                ${'#'}{${parentName}.${parentProperty.name}}
  +            </ice:column>
  +</#if>
  +</#if>
  +<#if c2h.isManyToOne(parentProperty)>
  +<#assign parentParentPojo = c2j.getPOJOClass(cfg.getClassMapping(parentProperty.value.referencedEntityName))>
  +<#if parentParentPojo.isComponent(parentParentPojo.identifierProperty)>
  +<#foreach componentProperty in parentParentPojo.identifierProperty.value.propertyIterator>
  +            <ice:column id="$editColumn${parentProperty.name}Id">
  +	    	    <f:facet name="header">${parentProperty.name} ${componentProperty.name}</f:facet>
  +		    	${'#'}{${parentName}.${parentProperty.name}.${parentParentPojo.identifierProperty.name}.${componentProperty.name}}
  +            </ice:column>
  +</#foreach>
  +<#else>
  +            <ice:column id="$editColumn${parentProperty.name}Id">
  +	    	    <f:facet name="header">${parentProperty.name} ${parentParentPojo.identifierProperty.name}</f:facet>
  +		    	${'#'}{${parentName}.${parentProperty.name}.${parentParentPojo.identifierProperty.name}}
  +            </ice:column>
  +</#if>
  +</#if>
  +</#foreach>
  +            <ice:column id="editColumn${parentName}LinkId">
  +                <f:facet name="header">action</f:facet>
  +                <s:link view="/${parentPageName}.xhtml" 
  +                         id="view${parentName}" 
  +                      value="View" 
  +                propagation="none">
  +<#if parentPojo.isComponent(parentPojo.identifierProperty)>
  +<#foreach componentProperty in parentPojo.identifierProperty.value.propertyIterator>
  +                    <f:param name="${parentName}${util.upper(componentProperty.name)}" 
  +                            value="${'#'}{${parentName}.${parentPojo.identifierProperty.name}.${componentProperty.name}}"/>
  +</#foreach>
  +<#else>
  +                    <f:param name="${parentName}${util.upper(parentPojo.identifierProperty.name)}" 
  +                           value="${'#'}{${parentName}.${parentPojo.identifierProperty.name}}"/>
  +</#if>
  +                </s:link>
  +            </ice:column>
  +      </ice:dataTable>
  +<#if parentPojo.shortName!=pojo.shortName>
  +        <div class="actionButtons">
  +            <s:button value="Select ${property.name}"
  +	              id="editSelectButton${property.name}Id"
  +                      view="/${parentPageName}List.xhtml">
  +                <f:param name="from" value="${pageName}Edit"/>
  +            </s:button>
  +        </div>
  +        
  +</#if>
  +    </div>
  +    </ice:panelTab>
  +</#if>
  +<#if c2h.isOneToManyCollection(property)>
  + 	<ice:panelTab id="editPanelTab${property.name}Id" label="${property.name}">
  +        <div class="association" id="${property.name}Children">
  +        
  +<#assign childPojo = c2j.getPOJOClass(property.value.element.associatedClass)>
  +<#assign childPageName = childPojo.shortName>
  +<#assign childEditPageName = childPojo.shortName + "Edit">
  +<#assign childName = util.lower(childPojo.shortName)>
  +            <h:outputText value="No ${property.name}" 
  +	                     id="edit${property.name}TextId"
  +                       rendered="${'#'}{empty ${homeName}.${property.name}}"/>
  +           <ice:dataTable value="${'#'}{${homeName}.${property.name}}" 
  +                           var="${childName}" 
  +                      rendered="${'#'}{not empty ${homeName}.${property.name}}" 
  +                    rowClasses="rvgRowOne,rvgRowTwo"
  +			  columnClasses="allCols"
  +                            id="edit${property.name}Table">
  +<#foreach childProperty in childPojo.allPropertiesIterator>
  +<#if !c2h.isCollection(childProperty) && !c2h.isManyToOne(childProperty)>
  +<#if childPojo.isComponent(childProperty)>
  +<#foreach componentProperty in childProperty.value.propertyIterator>
  +               <ice:column id="edit${componentProperty.name}Id">
  +                    <f:facet name="header">${componentProperty.name}</f:facet>
  +                    ${'#'}{${childName}.${childProperty.name}.${componentProperty.name}}
  +                </ice:column>
  +</#foreach>
  +<#else>
  +                <ice:column id="edit${childProperty.name}Id">
  +                    <f:facet name="header">${childProperty.name}</f:facet>
  +                    <h:outputText id="edit${childProperty.name}TextId" value="${'#'}{${childName}.${childProperty.name}}"/>
  +                </ice:column>
  +</#if>
  +</#if>
  +</#foreach>
  +                <ice:column id="edit${childName}Id">
  +                    <f:facet name="header">action</f:facet>
  +                    <s:link view="/${childPageName}.xhtml" 
  +                              id="select${childName}" 
  +                           value="Select"
  +                     propagation="none">
  +<#if childPojo.isComponent(childPojo.identifierProperty)>
  +<#foreach componentProperty in childPojo.identifierProperty.value.propertyIterator>
  +                        <f:param name="${childName}${util.upper(componentProperty.name)}" 
  +                                value="${'#'}{${childName}.${childPojo.identifierProperty.name}.${componentProperty.name}}"/>
  +</#foreach>
  +<#else>
  +                        <f:param name="${childName}${util.upper(childPojo.identifierProperty.name)}" 
  +                                value="${'#'}{${childName}.${childPojo.identifierProperty.name}}"/>
  +</#if>
  +                        <f:param name="${childName}From" value="${entityName}"/>
  +                    </s:link>
  +                </ice:column>
  +           </ice:dataTable>
  +      </div>
  +        <f:subview rendered="${'#'}{${homeName}.managed}" id="${property.name}Id">
  +        <div class="actionButtons">
  +            <s:button id="add${childName}Id" 
  +                   value="Add ${childName}"
  +                    view="/${childEditPageName}.xhtml"
  +             propagation="none">
  +                 <f:param name="${componentName}${util.upper(pojo.identifierProperty.name)}" 
  +                         value="${'#'}{${homeName}.instance.${pojo.identifierProperty.name}}"/>
  +                 <f:param name="${childName}From" value="${entityName}"/>
  +            </s:button>
  +        </div>
  +        </f:subview>
  +    </ice:panelTab>
  +</#if>
  +</#foreach>
  +<#if hasAssociations>
  +</ice:panelTabSet>
  +</ice:form>
  +</#if>
  +</ui:define>
  +
  +</ui:composition>
  +
  +
  +
  
  
  
  1.3       +90 -98    jboss-seam/seam-gen/icefaces/view/editproperty.xhtml.ftl
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: editproperty.xhtml.ftl
  ===================================================================
  RCS file: editproperty.xhtml.ftl
  diff -N editproperty.xhtml.ftl
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ editproperty.xhtml.ftl	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,240 @@
  +<#if !c2h.isCollection(property) && !c2h.isManyToOne(property)>
  +<#assign propertyIsId = property.equals(pojo.identifierProperty)>
  +<#if !propertyIsId || property.value.identifierGeneratorStrategy == "assigned">
  +<#if pojo.isComponent(property)>
  +<#foreach componentProperty in property.value.propertyIterator>
  +<#assign column = componentProperty.columnIterator.next()>
  +<#assign propertyType = componentProperty.value.typeName>
  +
  +            <s:decorate id="${componentProperty.name}Decoration" template="layout/edit.xhtml">
  +                <ui:define name="label">${componentProperty.name}</ui:define>
  +<#if propertyType == "date">
  +                        <ice:selectInputDate id="${componentProperty.name}Id" 
  +                              renderAsPopup="true"
  +<#if propertyIsId>
  +                       disabled="${'#'}{${homeName}.managed}"
  +</#if>
  +<#if !column.nullable>
  +                       required="true"
  +</#if>
  +                          value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}">                                         value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}">
  +                                
  +                           </ice:selectInputDate>
  +<#elseif propertyType == "time">
  +                        <ice:inputText id="${componentProperty.name}Id" 
  +                                   size="5"
  +<#if !column.nullable>
  +                       required="true"
  +</#if>
  +                             value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}">
  +                    <s:convertDateTime type="time"/>
  +                        </ice:inputText>
  +<#elseif propertyType == "timestamp">
  +                        <ice:inputText id="${componentProperty.name}Id" 
  +                                   size="16"
  +<#if !column.nullable>
  +                       required="true"
  +</#if>
  +                                  value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}">
  +                             <s:convertDateTime type="both" dateStyle="short"/>
  +                        </ice:inputText>
  +<#elseif propertyType == "big_decimal">
  +                        <ice:inputText id="${componentProperty.name}Id" 
  +                              partialSubmit="true"
  +<#if !column.nullable>
  +                       required="true"
  +</#if>
  +                          value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}"
  +                           size="${column.precision+7}">
  +                        </ice:inputText>
  +<#elseif propertyType == "big_integer">
  +                        <ice:inputText id="${componentProperty.name}Id" 
  +					partialSubmit="true"
  +<#if propertyIsId>
  +                       disabled="${'#'}{${homeName}.managed}"
  +</#if>
  +<#if !column.nullable>
  +                       required="true"
  +</#if>
  +                          value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}"
  +                           size="${column.precision+6}">
  +                        </ice:inputText>
  +<#elseif propertyType == "boolean" || propertyType == "yes_no" || propertyType == "true_false">
  +                 <h:selectBooleanCheckbox id="${componentProperty.name}"
  +<#if !column.nullable>
  +                                    required="true"
  +</#if>
  +<#if propertyIsId>
  +                                    disabled="${'#'}{${homeName}.managed}"
  +</#if>
  +                                       value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}"/>
  +<#elseif propertyType == "string">
  +<#if column.length gt 160>
  +<#if column.length gt 800>
  +<#assign rows = 10>
  +<#else>
  +<#assign rows = (column.length/80)?int>
  +</#if>
  +                <h:inputTextarea id="${componentProperty.name}"
  +                               cols="80"
  +                               rows="${rows}"
  +<#if propertyIsId>
  +                           disabled="${'#'}{${homeName}.managed}"
  +</#if>
  +<#if !column.nullable>
  +                           required="true"
  +</#if>
  +                              value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}"/>
  +<#else>
  +<#if column.length gt 100>
  +<#assign size = 100>
  +<#else>
  +<#assign size = column.length>
  +</#if>
  +                <ice:inputText id="${componentProperty.name}" 
  +<#if propertyIsId>
  +                       disabled="${'#'}{${homeName}.managed}"
  +</#if>
  +<#if !column.nullable>
  +                      required="true"
  +</#if>
  +                          size="${size}"
  +                     maxlength="${column.length}"
  +                         value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}">
  +                         partialSubmit="true"
  +                 </ice:inputText>
  +</#if>
  +<#else>
  +                <ice:inputText id="${componentProperty.name}"
  +<#if !column.nullable>
  +                       required="true"
  +</#if>
  +<#if propertyIsId>
  +                       disabled="${'#'}{${homeName}.managed}"
  +</#if>
  +                                  value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}">
  +                        partialSubmit="true"
  +                 </ice:inputText>
  +</#if>
  +               </s:decorate>
  +</#foreach>
  +<#else>
  +<#assign column = property.columnIterator.next()>
  +<#assign propertyType = property.value.typeName>
  +
  +            <s:decorate id="${property.name}Decoration" template="layout/edit.xhtml">
  +                <ui:define name="label">${property.name}</ui:define>
  +<#if propertyType == "date">
  +                           <ice:selectInputDate id="${property.name}Id" 
  +                              renderAsPopup="true"
  +
  +<#if propertyIsId>
  +                       disabled="${'#'}{${homeName}.managed}"
  +</#if>
  +<#if !column.nullable>
  +                       required="true"
  +</#if>
  +                                  value="${'#'}{${homeName}.instance.${property.name}}">
  +                         </ice:selectInputDate>
  +<#elseif propertyType == "time">
  +                        <ice:inputText id="${property.name}Id" 
  +                                   size="5"
  +					partialSubmit="true"
  +<#if !column.nullable>
  +                               required="true"
  +</#if>
  +                                  value="${'#'}{${homeName}.instance.${property.name}}">
  +                            <s:convertDateTime type="time"/>
  +                        </ice:inputText>
  +<#elseif propertyType == "timestamp">
  +                        <ice:inputText id="${property.name}Id" 
  +                                     size="16"
  +			    partialSubmit="true"
  +<#if !column.nullable>
  +                                required="true"
  +</#if>
  +                                   value="${'#'}{${homeName}.instance.${property.name}}">
  +                            <s:convertDateTime type="both" dateStyle="short"/>
  +                        </ice:inputText>
  +<#elseif propertyType == "big_decimal">
  +                        <ice:inputText id="${property.name}Id" 
  +			    partialSubmit="true"
  +<#if !column.nullable>
  +                                 required="true"
  +</#if>
  +                                    value="${'#'}{${homeName}.instance.${property.name}}"
  +                                     size="${column.precision+7}">
  +                        </ice:inputText>
  +<#elseif propertyType == "big_integer">
  +                        <ice:inputText id="${property.name}Id"
  +			                partialSubmit="true"
  +<#if propertyIsId>
  +                       disabled="${'#'}{${homeName}.managed}"
  +</#if>
  +<#if !column.nullable>
  +                       required="true"
  +</#if>
  +                          value="${'#'}{${homeName}.instance.${property.name}}"
  +                           size="${column.precision+6}"/>
  +<#elseif propertyType == "boolean" || propertyType == "yes_no" || propertyType == "true_false">
  +                        <ice:selectBooleanCheckbox id="${property.name}Id"
  +					partialSubmit="true"
  +<#if !column.nullable>
  +                                   required="true"
  +</#if>
  +<#if propertyIsId>
  +                                   disabled="${'#'}{${homeName}.managed}"
  +</#if>
  +                                      value="${'#'}{${homeName}.instance.${property.name}}"/>
  +<#elseif propertyType == "string">
  +<#if column.length gt 160>
  +<#if column.length gt 800>
  +<#assign rows = 10>
  +<#else>
  +<#assign rows = (column.length/80)?int>
  +</#if>
  +                <h:inputTextarea id="${property.name}"
  +                               cols="80"
  +                               rows="${rows}"
  +<#if propertyIsId>
  +                           disabled="${'#'}{${homeName}.managed}"
  +</#if>
  +<#if !column.nullable>
  +                           required="true"
  +</#if>
  +                              value="${'#'}{${homeName}.instance.${property.name}}"/>
  +<#else>
  +<#if column.length gt 100>
  +<#assign size = 100>
  +<#else>
  +<#assign size = column.length>
  +</#if>
  +                        <ice:inputText id="${property.name}Id" 
  +			    partialSubmit="true"
  +<#if propertyIsId>
  +                       disabled="${'#'}{${homeName}.managed}"
  +</#if>
  +<#if !column.nullable>
  +                       required="true"
  +</#if>
  +                                   size="${size}"
  +                              maxlength="${column.length}"
  +                                  value="${'#'}{${homeName}.instance.${property.name}}">
  +                        </ice:inputText>
  +</#if>
  +<#else>
  +                        <ice:inputText id="${property.name}Id"
  +			    partialSubmit="true"
  +<#if !column.nullable>
  +                       required="true"
  +</#if>
  +<#if propertyIsId>
  +                       disabled="${'#'}{${homeName}.managed}"
  +</#if>
  +                                    value="${'#'}{${homeName}.instance.${property.name}}">
  +                        </ice:inputText>
  +</#if>
  +            </s:decorate>
  +</#if>
  +</#if>
  +</#if>
  
  
  
  1.3       +0 -0      jboss-seam/seam-gen/icefaces/view/error.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: error.xhtml
  ===================================================================
  RCS file: error.xhtml
  diff -N error.xhtml
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ error.xhtml	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,18 @@
  +<!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"
  +                template="layout/template.xhtml">
  +
  +<ui:define name="body">
  +
  +    <h1>Error</h1>
  +    <p>Something bad happened :-(</p>
  +    
  +    <h:messages styleClass="message"/>
  +        
  +</ui:define> 
  +</ui:composition>
  
  
  
  1.3       +12 -10    jboss-seam/seam-gen/icefaces/view/form.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: form.xhtml
  ===================================================================
  RCS file: form.xhtml
  diff -N form.xhtml
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ form.xhtml	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,44 @@
  +<!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:ice="http://www.icesoft.com/icefaces/component"  
  +                template="layout/template.xhtml">
  +                       
  +<ui:define name="body">
  +
  +    <h:messages globalOnly="true" styleClass="message"/>
  +    
  +    <ice:form id="@componentName at formId">
  +
  +     <ice:panelGroup  id="formSearchGroupId" styleClass="formBorderHighlight">
  +          <table width="100%" border="0" cellspacing="0" cellpadding="0">
  +              <tr>
  +                  <td class="iceDatTblColHdr2">		
  +				<ice:outputText id="formSearchTextId" value="@pageName@"/>
  +                 </td>
  +              </tr>
  +          </table> 
  +            <s:decorate id="valueDecoration" template="layout/edit.xhtml">
  +                <ui:define name="label">Value</ui:define>
  +                <h:inputText id="value" required="true"
  +                             value="#{@componentName at .value}"/>
  +            </s:decorate>
  +            
  +            <div style="clear:both"/>
  +
  +        </ice:panelGroup>
  +
  +        <div class="actionButtons">
  +            <h:commandButton id="@methodName@" value="@methodName@" 
  +                action="#{@componentName at .@methodName@}"/>     			  
  +        </div>
  +    </ice:form>
  +    
  +</ui:define>
  +
  +</ui:composition>
  +
  
  
  
  1.3       +5 -5      jboss-seam/seam-gen/icefaces/view/home.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: home.xhtml
  ===================================================================
  RCS file: home.xhtml
  diff -N home.xhtml
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ home.xhtml	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,33 @@
  +<!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:ice="http://www.icesoft.com/icefaces/component"
  +                template="layout/template.xhtml">
  +
  +<ui:define name="body">
  +
  +     <h:messages globalOnly="true" styleClass="message"/>
  +    
  +        <ice:panelGrid id="homePanelGrid" columns="2" columnClasses="leftMenu,leftMenu">
  +             <img src="img/ICEfaces-logo.gif" alt="Icefaces and Seam: framework demo"/>   
  +             <ice:panelGroup id="homePanelGroup">
  +                    <p>This ICEfaces 1.6.1 + Seam 2.0.0 enabled Application includes:</p>
  +                        <ul>
  +                            <li>Ant build script</li>
  +                            <li>Deployment to JBoss AS 4.2.1 </li>
  +                            <li>Integration testing using TestNG and JBoss Embeddable EJB3</li>
  +                            <li>EJB 3.0 Seam components</li>
  +                            <li>Templated Facelets views with Icefaces components</li>
  +                            <li>HSQL (or MySQL) Datasource</li>
  +                            <li>Default CSS stylesheet</li>
  +                            <li>Internationalization support</li>
  +                        </ul>
  +            </ice:panelGroup>
  +        </ice:panelGrid>
  +    
  +</ui:define> 
  +</ui:composition>
  \ No newline at end of file
  
  
  
  1.3       +0 -0      jboss-seam/seam-gen/icefaces/view/index.html
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: index.html
  ===================================================================
  RCS file: index.html
  diff -N index.html
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ index.html	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,5 @@
  +<html>
  +<head>
  +  <meta http-equiv="Refresh" content="0; URL=home.seam">
  +</head>
  +</html>
  \ No newline at end of file
  
  
  
  1.3       +10 -4     jboss-seam/seam-gen/icefaces/view/list.page.xml.ftl
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: list.page.xml.ftl
  ===================================================================
  RCS file: list.page.xml.ftl
  diff -N list.page.xml.ftl
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ list.page.xml.ftl	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,33 @@
  +<?xml version="1.0" encoding="UTF-8"?>
  +
  +<page xmlns="http://jboss.com/products/seam/pages"
  +
  +      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  +
  +      xsi:schemaLocation="http://jboss.com/products/seam/pages http://jboss.com/products/seam/pages-2.0.xsd">
  +
  +      
  +
  +<#assign entityName = pojo.shortName>
  +<#assign componentName = util.lower(entityName)>
  +<#assign listName = componentName + "List">
  +
  +   <param name="firstResult" value="${'#'}{${listName}.firstResult}"/>
  +   <param name="order" value="${'#'}{${listName}.order}"/>
  +   <param name="from"/>
  +<#foreach property in pojo.allPropertiesIterator>
  +<#if !c2h.isCollection(property) && !c2h.isManyToOne(property)>
  +<#if c2j.isComponent(property)>
  +<#foreach componentProperty in property.value.propertyIterator>
  +<#if componentProperty.value.typeName == "string">
  +   <param name="${componentProperty.name}" value="${'#'}{${listName}.${componentName}.${property.name}.${componentProperty.name}}"/>
  +</#if>
  +</#foreach>
  +<#else>
  +<#if property.value.typeName == "string">
  +   <param name="${property.name}" value="${'#'}{${listName}.${componentName}.${property.name}}"/>
  +</#if>
  +</#if>
  +</#if>
  +</#foreach>
  +</page>
  \ No newline at end of file
  
  
  
  1.3       +27 -21    jboss-seam/seam-gen/icefaces/view/list.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: list.xhtml
  ===================================================================
  RCS file: list.xhtml
  diff -N list.xhtml
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ list.xhtml	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,56 @@
  +<!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:ice="http://www.icesoft.com/icefaces/component" 
  +                template="layout/template.xhtml">
  +                       
  +<ui:define name="body">
  +    
  +    <h:messages globalOnly="true" styleClass="message"/>
  +  <ice:form id="listFormId">  
  +     <ice:panelGroup  id="listSearchGroupId" styleClass="formBorderHighlight">
  +          <table width="100%" border="0" cellspacing="0" cellpadding="0">
  +              <tr>
  +                  <td class="iceDatTblColHdr2">		
  +		          <ice:outputText id="list at masterPageName@Id" value="@masterPageName@"/>
  +                  </td>
  +              </tr>
  +          </table>
  +        
  +        <div class="results">
  +        
  +    		<h:outputText id="list at componentNameExistsId" value="No @componentName@ exists" 
  +            	rendered="#{empty @listName at .resultList}"/>
  +    		<ice:dataTable id="@listName at TableId" var="@componentName@"
  +           			 value="#{@listName at .resultList}" 
  +				columnClasses="allCols"
  +           			rendered="#{not empty @listName at .resultList}">
  +        		<ice:column id="list at componentName@.id">
  +            		<f:facet name="header">Id</f:facet>
  +            		#{@componentName at .id}
  +        		</ice:column>
  +        		<ice:column id="list at componentName@.name">
  +                    <f:facet name="header">Name</f:facet>
  +                    <s:link id="@componentName@" 
  +                         value="#{@componentName at .name}" 
  +                         view="/@pageName at .xhtml">
  +                        <f:param name="@componentName at Id" 
  +                                value="#{@componentName at .id}"/>
  +                    </s:link>
  +        		</ice:column>
  +    		</ice:dataTable>
  +      </div>
  +   </ice:panelGroup>
  +   <div class="actionButtons">
  +        <s:button id="listDoneId" value="Create @componentName@"
  +            view="/@pageName at .xhtml"/>			  
  +   </div>
  + </ice:form>   
  +</ui:define>
  +
  +</ui:composition>
  +
  
  
  
  1.3       +48 -41    jboss-seam/seam-gen/icefaces/view/list.xhtml.ftl
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: list.xhtml.ftl
  ===================================================================
  RCS file: list.xhtml.ftl
  diff -N list.xhtml.ftl
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ list.xhtml.ftl	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,212 @@
  +<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  +                             "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  +<#assign entityName = pojo.shortName>
  +<#assign componentName = util.lower(entityName)>
  +<#assign listName = componentName + "List">
  +<#assign pageName = entityName>
  +<#assign editPageName = entityName + "Edit">
  +<#assign listPageName = entityName + "List">
  +
  +<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:ice="http://www.icesoft.com/icefaces/component"  
  +                template="layout/template.xhtml">
  +                       
  +<ui:define name="body">
  +    
  +    <h:messages globalOnly="true" styleClass="message" id="globalMessages"/>
  +    
  +    <ice:form id="list${componentName}FormId" styleClass="edit">
  +      <ice:panelGroup  id="searchGroup" styleClass="formBorderHighlight">
  +          <table width="100%" border="0" cellspacing="0" cellpadding="0">
  +              <tr>
  +                  <td class="iceDatTblColHdr2">
  +                    <ice:outputText id="list${entityName}Id" value="${entityName} search"/>
  +                 </td>
  +              </tr>
  +         </table>	
  +         <ice:panelGroup id="listPanelGroup${entityName}Id" styleClass="edit">
  +		
  +<#foreach property in pojo.allPropertiesIterator>
  +<#if !c2h.isCollection(property) && !c2h.isManyToOne(property)>
  +<#if c2j.isComponent(property)>
  +<#foreach componentProperty in property.value.propertyIterator>
  +<#if componentProperty.value.typeName == "string">
  +            <s:decorate id="${componentProperty.name}decId" template="layout/display.xhtml">
  +                <ui:define name="label">${componentProperty.name}</ui:define>
  +                  <ice:inputText id="${componentProperty.name}TextId" 
  +                          value="${'#'}{${listName}.${componentName}.${property.name}.${componentProperty.name}}"
  +				  partialSubmit="true"/>
  +            </s:decorate>
  +
  +</#if>
  +</#foreach>
  +<#else>
  +<#if property.value.typeName == "string">
  +            <s:decorate id="${property.name}decId" template="layout/display.xhtml">
  +                <ui:define name="label">${property.name}</ui:define>
  +                <ice:inputText id="list${property.name}TextId" 
  +                          value="${'#'}{${listName}.${componentName}.${property.name}}"
  +				  partialSubmit="true"/>
  +            </s:decorate>
  +
  +</#if>
  +</#if>
  +</#if>
  +</#foreach>
  +          
  +   
  +	  </ice:panelGroup>
  +  
  +        
  +        <div class="actionButtons">
  +            <ice:commandButton id="listSearchButtonId" value="Search" action="/${listPageName}.xhtml"/>
  +        </div>
  +      </ice:panelGroup> 
  +    </ice:form>
  +    
  +    <ice:panelGroup styleClass="formBorderHighlight">
  +
  +    <h3>${componentName}  search results</h3>
  +
  +    <div class="searchResults" id="list${componentName}Results">
  +    <ice:outputText value="No ${componentName} exists" 
  +               rendered="${'#'}{empty ${listName}.resultList}"/>
  +               
  +    <ice:dataTable id="${listName}TableId" 
  +                  var="${componentName}"
  +                value="${'#'}{${listName}.resultList}" 
  +	columnClasses="allCols"
  +             rendered="${'#'}{not empty ${listName}.resultList}">
  +<#foreach property in pojo.allPropertiesIterator>
  +<#if !c2h.isCollection(property) && !c2h.isManyToOne(property)>
  +<#if pojo.isComponent(property)>
  +<#foreach componentProperty in property.value.propertyIterator>
  +        <ice:column id="list${componentProperty.name}Id">
  +            <f:facet name="header">${componentProperty.name}</f:facet>
  +            ${'#'}{${componentName}.${property.name}.${componentProperty.name}}
  +        </ice:column>
  +</#foreach>
  +<#else>
  +        <ice:column id="list${property.name}Id">
  +            <f:facet name="header">
  +                <s:link styleClass="columnHeader"
  +		             id="list${property.name}LinkId"
  +                             value="${property.name} ${'#'}{${listName}.order=='${property.name} asc' ? messages.down : ( ${listName}.order=='${property.name} desc' ? messages.up : '' )}">
  +                    <f:param name="order" value="${'#'}{${listName}.order=='${property.name} asc' ? '${property.name} desc' : '${property.name} asc'}"/>
  +                </s:link>
  +            </f:facet>
  +            ${'#'}{${componentName}.${property.name}}&amp;nbsp;
  +        </ice:column>
  +</#if>
  +</#if>
  +<#if c2h.isManyToOne(property)>
  +<#assign parentPojo = c2j.getPOJOClass(cfg.getClassMapping(property.value.referencedEntityName))>
  +<#if parentPojo.isComponent(parentPojo.identifierProperty)>
  +<#foreach componentProperty in parentPojo.identifierProperty.value.propertyIterator>
  +        <ice:column id="listColumn${propertyName}${listName}Id">
  +            <f:facet name="header">
  +<#assign propertyPath = property.name + '.' + parentPojo.identifierProperty.name + '.' + componentProperty.name>
  +                <s:link styleClass="columnHeader"
  +		                id="listColumnHeader${componentProperty.name}Id"
  +                             value="${property.name} ${componentProperty.name} ${'#'}{${listName}.order=='${propertyPath} asc' ? messages.down : ( ${listName}.order=='${propertyPath} desc' ? messages.up : '' )}">
  +                    <f:param name="order" value="${'#'}{${listName}.order=='${propertyPath} asc' ? '${propertyPath} desc' : '${propertyPath} asc'}"/>
  +                </s:link>
  +            </f:facet>
  +            ${'#'}{${componentName}.${propertyPath}}&amp;nbsp;
  +        </ice:column>
  +</#foreach>
  +<#else>
  +        <ice:column id="listColumn${property.name}Id">
  +            <f:facet name="header">
  +<#assign propertyPath = property.name + '.' + parentPojo.identifierProperty.name>
  +                <s:link styleClass="columnHeader"
  +		                id="listcolumnHeader${property.name}Id"
  +                             value="${property.name} ${parentPojo.identifierProperty.name} ${'#'}{${listName}.order=='${propertyPath} asc' ? messages.down : ( ${listName}.order=='${propertyPath} desc' ? messages.up : '' )}">
  +                    <f:param name="order" value="${'#'}{${listName}.order=='${propertyPath} asc' ? '${propertyPath} desc' : '${propertyPath} asc'}"/>
  +                </s:link>
  +            </f:facet>
  +            ${'#'}{${componentName}.${propertyPath}}
  +        </ice:column>
  +</#if>
  +</#if>
  +</#foreach>
  +        <ice:column id="listColumn${pageName}Id">
  +            <f:facet name="header">action</f:facet>
  +            <s:link view="/${'#'}{empty from ? '${pageName}' : from}.xhtml" 
  +                   value="Select" 
  +                      id="list${componentName}LinkId">
  +<#if pojo.isComponent(pojo.identifierProperty)>
  +<#foreach componentProperty in pojo.identifierProperty.value.propertyIterator>
  +                <f:param name="${componentName}${util.upper(componentProperty.name)}" 
  +                        value="${'#'}{${componentName}.${pojo.identifierProperty.name}.${componentProperty.name}}"/>
  +</#foreach>
  +<#else>
  +                <f:param name="${componentName}${util.upper(pojo.identifierProperty.name)}" 
  +                        value="${'#'}{${componentName}.${pojo.identifierProperty.name}}"/>
  +</#if>
  +            </s:link>
  +        </ice:column>
  +    </ice:dataTable>
  +
  +    </div>
  +</ice:panelGroup>
  +
  +    <div class="tableControl">
  +      
  +        <s:link view="/${listPageName}.xhtml" 
  +            rendered="${'#'}{${listName}.previousExists}" 
  +               value="${'#'}{messages.left}${'#'}{messages.left} First Page"
  +                  id="firstPage${listName}Id">
  +          <f:param name="firstResult" value="0"/>
  +        </s:link>
  +        
  +        <s:link view="/${listPageName}.xhtml" 
  +            rendered="${'#'}{${listName}.previousExists}" 
  +               value="${'#'}{messages.left} Previous Page"
  +                  id="previousPage${listName}Id">
  +            <f:param name="firstResult" 
  +                    value="${'#'}{${listName}.previousFirstResult}"/>
  +        </s:link>
  +        
  +        <s:link view="/${listPageName}.xhtml" 
  +            rendered="${'#'}{${listName}.nextExists}" 
  +               value="Next Page ${'#'}{messages.right}"
  +                  id="nextPage${listName}Id">
  +            <f:param name="firstResult" 
  +                    value="${'#'}{${listName}.nextFirstResult}"/>
  +        </s:link>
  +        
  +        <s:link view="/${listPageName}.xhtml" 
  +            rendered="${'#'}{${listName}.nextExists}" 
  +               value="Last Page ${'#'}{messages.right}${'#'}{messages.right}"
  +                  id="lastPage${listName}Id">
  +            <f:param name="firstResult" 
  +                    value="${'#'}{${listName}.lastFirstResult}"/>
  +        </s:link>
  +        
  +    </div>
  +    
  +    <s:div styleClass="actionButtons" rendered="${'#'}{empty from}">
  +        <s:button view="/${editPageName}.xhtml"
  +                    id="listCreate${componentName}Id" 
  +                 value="Create ${componentName}">
  +<#assign idName = componentName + util.upper(pojo.identifierProperty.name)>
  +<#if c2j.isComponent(pojo.identifierProperty)>
  +<#foreach componentProperty in pojo.identifierProperty.value.propertyIterator>
  +<#assign cidName = componentName + util.upper(componentProperty.name)>
  +            <f:param name="${cidName}"/>
  +</#foreach>
  +<#else>
  +            <f:param name="${idName}"/>
  +</#if>
  +        </s:button>
  +    </s:div>
  +    
  +</ui:define>
  +
  +</ui:composition>
  +
  
  
  
  1.3       +4 -4      jboss-seam/seam-gen/icefaces/view/login.page.xml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: login.page.xml
  ===================================================================
  RCS file: login.page.xml
  diff -N login.page.xml
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ login.page.xml	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,11 @@
  +<?xml version="1.0" encoding="UTF-8"?>
  +<page xmlns="http://jboss.com/products/seam/pages"
  +      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  +      xsi:schemaLocation="http://jboss.com/products/seam/pages http://jboss.com/products/seam/pages-2.0.xsd">
  +
  +   <navigation from-action="#{identity.login}">
  +      <rule if="#{identity.loggedIn}">
  +         <redirect view-id="/home.xhtml"/>
  +      </rule>
  +   </navigation>
  +</page>
  \ No newline at end of file
  
  
  
  1.3       +27 -23    jboss-seam/seam-gen/icefaces/view/login.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: login.xhtml
  ===================================================================
  RCS file: login.xhtml
  diff -N login.xhtml
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ login.xhtml	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,49 @@
  +<!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:ice="http://www.icesoft.com/icefaces/component"
  +                template="layout/template.xhtml">
  +
  +<ui:define name="body">
  +    
  +    <h:messages styleClass="message"/>
  +    
  + <ice:form id="loginFormId">
  +      <ice:panelGroup  id="loginPanelGroupId" styleClass="formBorderHighlight">
  +          <table width="100%" border="0" cellspacing="0" cellpadding="0">
  +              <tr>
  +                  <td class="iceDatTblColHdr2">
  +       			<ice:outputText id="loginTextId" value="Login"/>
  +                  </td>
  +              </tr>
  +          </table>
  +    
  +      
  +            <p>Please login using any username and password</p>
  +
  +                    <div class="dialog">
  +                        <h:panelGrid id="loginPanelGridId" columns="2" rowClasses="prop" columnClasses="name,value">
  +                    <h:outputLabel for="username">Username</h:outputLabel>
  +                    <h:inputText id="username" 
  +                              value="#{identity.username}"/>
  +                    <h:outputLabel for="password">Password</h:outputLabel>
  +                    <h:inputSecret id="password" 
  +                                value="#{identity.password}"/>
  +                    <h:outputLabel for="rememberMe">Remember me</h:outputLabel>
  +                    <h:selectBooleanCheckbox id="rememberMe" 
  +                                          value="#{identity.rememberMe}"/>
  +                </h:panelGrid>
  +            </div>
  +  
  +      </ice:panelGroup>
  +         <div class="actionButtons">
  +            <h:commandButton id="loginButtonId" value="Login" action="#{identity.login}"/>
  +        </div>
  +          
  +  </ice:form>      
  +</ui:define> 
  +</ui:composition>
  
  
  
  1.3       +0 -0      jboss-seam/seam-gen/icefaces/view/page.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: page.xhtml
  ===================================================================
  RCS file: page.xhtml
  diff -N page.xhtml
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ page.xhtml	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,17 @@
  +<!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"
  +                template="layout/template.xhtml">
  +
  +<ui:define name="body">
  +
  +    <h1>${pageName}</h1>
  +    <p>Generated page.</p>
  +
  +</ui:define>
  +
  +</ui:composition>
  
  
  
  1.3       +0 -0      jboss-seam/seam-gen/icefaces/view/param.xml.ftl
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: param.xml.ftl
  ===================================================================
  RCS file: param.xml.ftl
  diff -N param.xml.ftl
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ param.xml.ftl	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,24 @@
  +<#foreach property in pojo.allPropertiesIterator>
  +<#if c2h.isManyToOne(property)>
  +<#assign parentPojo = c2j.getPOJOClass(cfg.getClassMapping(property.value.referencedEntityName))>
  +<#if entities.add(parentPojo.shortName)>
  +<#assign parentComponentName = util.lower(parentPojo.shortName)>
  +<#assign parentHomeName = parentComponentName + "Home">
  +   <param name="${parentComponentName}From"/>
  +<#assign parentIdName = parentComponentName + util.upper(parentPojo.identifierProperty.name)>
  +<#if c2j.isComponent(parentPojo.identifierProperty)>
  +<#foreach parentComponentProperty in parentPojo.identifierProperty.value.propertyIterator>
  +<#assign parentCidName = parentComponentName + util.upper(parentComponentProperty.name)>
  +   <param name="${parentCidName}" value="${'#'}{${parentHomeName}.${parentIdName}.${parentComponentProperty.name}}"/>
  +</#foreach>
  +<#else>
  +   <param name="${parentIdName}" value="${'#'}{${parentHomeName}.${parentIdName}}"/>
  +</#if>
  +<#assign p = pojo>
  +<#assign pojo = parentPojo>
  +<#include "param.xml.ftl">
  +<#assign pojo = p>
  +</#if>
  +</#if>
  +</#foreach>
  +
  
  
  
  1.3       +12 -14    jboss-seam/seam-gen/icefaces/view/query.xhtml
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: query.xhtml
  ===================================================================
  RCS file: query.xhtml
  diff -N query.xhtml
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ query.xhtml	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,70 @@
  +<!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:ice="http://www.icesoft.com/icefaces/component"   
  +                template="layout/template.xhtml">
  +                       
  +<ui:define name="body">
  +
  +    <h1>@beanName@ results</h1>
  +    <p>Generated query page</p>
  +    
  +    <h:messages globalOnly="true" styleClass="message"/>
  +    <ice:form id="queryFormId">
  +    <h:outputText value="No results from search" 
  +                    id="queryOutputTextId"
  +            rendered="#{empty @componentName at .resultList}"/>
  +    <f:subview id="queryResultsId" rendered="#{not empty @componentName at .resultList}">
  +        <ice:dataTable id="@componentName at Table"
  +                     var="item"
  +		columnClasses="allCols"
  +                   value="#{@componentName at .resultList}">
  +            <ice:column id="column at componentName@list">
  +                <f:facet name="header">Result</f:facet>
  +                #{item}
  +            </ice:column>
  +        </ice:dataTable>
  +
  +       <div class="tableControl">
  +            <s:link view="/@pageName at .xhtml"
  +                    rendered="#{@componentName at .previousExists}"
  +                    value="&lt;&lt; First Page"
  +                    id="firstPageLinkId">
  +                <f:param name="firstResult" value="0"/>
  +            </s:link>
  +
  +            <s:link view="/@pageName at .xhtml"
  +                    rendered="#{@componentName at .previousExists}"
  +                    value="&lt; Previous Page"
  +                    id="previousPageLinkId">
  +                <f:param name="firstResult"
  +                         value="#{@componentName at .previousFirstResult}"/>
  +            </s:link>
  +
  +            <s:link view="/@pageName at .xhtml"
  +                    rendered="#{@componentName at .nextExists}"
  +                    value="Next Page &gt;"
  +                    id="nextPageLinkId">
  +                <f:param name="firstResult"
  +                         value="#{@componentName at .nextFirstResult}"/>
  +            </s:link>
  +
  +            <s:link view="/@pageName at .xhtml"
  +                    rendered="#{@componentName at .nextExists}"
  +                    value="Last Page &gt;&gt;"
  +                    id="lastPageLinkId">
  +                <f:param name="firstResult"
  +                         value="#{@componentName at .lastFirstResult}"/>
  +            </s:link>
  +       </div>
  +
  +    </f:subview>
  +  </ice:form>
  +</ui:define>
  +
  +</ui:composition>
  +
  
  
  
  1.3       +10 -4     jboss-seam/seam-gen/icefaces/view/view.page.xml.ftl
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: view.page.xml.ftl
  ===================================================================
  RCS file: view.page.xml.ftl
  diff -N view.page.xml.ftl
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ view.page.xml.ftl	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,29 @@
  +<?xml version="1.0" encoding="UTF-8"?>
  +
  +<page xmlns="http://jboss.com/products/seam/pages"
  +
  +      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  +
  +      xsi:schemaLocation="http://jboss.com/products/seam/pages http://jboss.com/products/seam/pages-2.0.xsd">
  +
  +      
  +
  +<#assign entityName = pojo.shortName>
  +<#assign componentName = util.lower(entityName)>
  +<#assign homeName = componentName + "Home">
  +
  +   <param name="${componentName}From"/>
  +<#assign idName = componentName + util.upper(pojo.identifierProperty.name)>
  +<#if c2j.isComponent(pojo.identifierProperty)>
  +<#foreach componentProperty in pojo.identifierProperty.value.propertyIterator>
  +<#assign cidName = componentName + util.upper(componentProperty.name)>
  +   <param name="${cidName}" value="${'#'}{${homeName}.${idName}.${componentProperty.name}}"/>
  +</#foreach>
  +<#else>
  +   <param name="${idName}" value="${'#'}{${homeName}.${idName}}"/>
  +</#if>
  +<#assign entities=util.set()>
  +<#if entities.add(pojo.shortName)>
  +<#include "param.xml.ftl">
  +</#if>
  +</page>
  \ No newline at end of file
  
  
  
  1.3       +40 -35    jboss-seam/seam-gen/icefaces/view/view.xhtml.ftl
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: view.xhtml.ftl
  ===================================================================
  RCS file: view.xhtml.ftl
  diff -N view.xhtml.ftl
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ view.xhtml.ftl	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,216 @@
  +<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  +                             "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  +<#assign entityName = pojo.shortName>
  +<#assign componentName = util.lower(entityName)>
  +<#assign homeName = componentName + "Home">
  +<#assign masterPageName = entityName + "List">
  +<#assign editPageName = entityName + "Edit">
  +
  +<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:ice="http://www.icesoft.com/icefaces/component"   
  +                template="layout/template.xhtml">
  +                       
  +<ui:define name="body">
  +    
  +    <h:messages globalOnly="true" styleClass="message" id="globalMessages"/>
  + 
  +      <ice:panelGroup  id="view${homeName}PanelGroupId" styleClass="formBorderHighlight">
  +          <table width="100%" border="0" cellspacing="0" cellpadding="0">
  +              <tr>
  +                  <td class="iceDatTblColHdr2">
  +			    <ice:outputText id="viewText${homeName}Id" value="${homeName}"/>
  +                  </td>
  +              </tr>
  +          </table>
  +      
  +<#foreach property in pojo.allPropertiesIterator>
  +<#if !c2h.isCollection(property) && !c2h.isManyToOne(property)>
  +<#include "viewproperty.xhtml.ftl">
  +</#if>
  +</#foreach>
  +
  +          <div style="clear:both"/>
  + 
  +
  +    <div id="view${editPageName}searchButtons" class="actionButtons">      
  +
  +        <s:button view="/${editPageName}.xhtml" 
  +                    id="viewEdit${editPageName}" 
  +                 value="Edit"/>
  +
  +        <s:button view="/${'#'}{empty ${componentName}From ? '${masterPageName}' : ${componentName}From}.xhtml"
  +                    id="viewDone${editPageName}"
  +                 value="Done"/>
  +
  +    </div>
  +  </ice:panelGroup>
  +
  +<#assign hasAssociations=false>
  +<#foreach property in pojo.allPropertiesIterator>
  +<#if c2h.isManyToOne(property) || c2h.isOneToManyCollection(property)>
  +<#assign hasAssociations=true>
  +</#if>
  +</#foreach>
  +
  +<#if hasAssociations>
  +    <ice:form id="view2${homeName}FormId">
  +       <ice:panelTabSet id="view${homeName}TabSetId" 
  +                styleClass="componentPanelTabSetLayout" 
  +		style="margin-bottom:5px;margin-top:10px;">
  +</#if>
  +<#foreach property in pojo.allPropertiesIterator>
  +<#if c2h.isManyToOne(property)>
  +<#assign parentPojo = c2j.getPOJOClass(cfg.getClassMapping(property.value.referencedEntityName))>
  +<#assign parentPageName = parentPojo.shortName>
  +<#assign parentName = util.lower(parentPojo.shortName)>
  +
  +	<ice:panelTab id="view${property.name}panelTab" label="${property.name}">
  +   		<div class="association" id="${property.name}Parent">
  +        
  +       		 <h:outputText value="No ${property.name}" 
  +		                  id="view${property.name}TextId"
  +                   rendered="${'#'}{${homeName}.instance.${property.name} == null}"/>
  +   
  +        	<ice:dataTable  var="${parentName}" 
  +                   value="${'#'}{${homeName}.instance.${property.name}}" 
  +                rendered="${'#'}{${homeName}.instance.${property.name} != null}"
  +              rowClasses="rvgRowOne,rvgRowTwo"
  +	        columnClasses="allCols"
  +                      id="view${property.name}TableId">
  +<#foreach parentProperty in parentPojo.allPropertiesIterator>
  +<#if !c2h.isCollection(parentProperty) && !c2h.isManyToOne(parentProperty)>
  +<#if parentPojo.isComponent(parentProperty)>
  +<#foreach componentProperty in parentProperty.value.propertyIterator>
  +            <ice:column id="viewColumn${componentProperty.name}Id">
  +                <f:facet name="header">${componentProperty.name}</f:facet>
  +                ${'#'}{${parentName}.${parentProperty.name}.${componentProperty.name}}
  +            </ice:column>
  +</#foreach>
  +<#else>
  +            <ice:column id="view${parentProperty.name}Id">
  +                <f:facet name="header">${parentProperty.name}</f:facet>
  +                ${'#'}{${parentName}.${parentProperty.name}}
  +            </ice:column>
  +</#if>
  +</#if>
  +<#if c2h.isManyToOne(parentProperty)>
  +<#assign parentParentPojo = c2j.getPOJOClass(cfg.getClassMapping(parentProperty.value.referencedEntityName))>
  +<#if parentParentPojo.isComponent(parentParentPojo.identifierProperty)>
  +<#foreach componentProperty in parentParentPojo.identifierProperty.value.propertyIterator>
  +            <ice:column id="view${parentProperty.name}ColumnId">
  +	    	    <f:facet name="header">${parentProperty.name} ${componentProperty.name}</f:facet>
  +		    	${'#'}{${parentName}.${parentProperty.name}.${parentParentPojo.identifierProperty.name}.${componentProperty.name}}
  +            </ice:column>
  +</#foreach>
  +<#else>
  +            <ice:column id="view$${parentParentPojo.identifierProperty.name}ColumnName">
  +	    	    <f:facet name="header">${parentProperty.name} ${parentParentPojo.identifierProperty.name}</f:facet>
  +		    	${'#'}{${parentName}.${parentProperty.name}.${parentParentPojo.identifierProperty.name}}
  +            </ice:column>
  +</#if>
  +</#if>
  +</#foreach>
  +            <ice:column id="view${parentName}ColumnId">
  +                <f:facet name="header">action</f:facet>
  +                <s:link id="view${parentName}LinkId" 
  +                     value="View" 
  +                      view="/${parentPageName}.xhtml">
  +<#if parentPojo.isComponent(parentPojo.identifierProperty)>
  +<#foreach componentProperty in parentPojo.identifierProperty.value.propertyIterator>
  +                    <f:param name="${parentName}${util.upper(componentProperty.name)}" 
  +                            value="${'#'}{${parentName}.${parentPojo.identifierProperty.name}.${componentProperty.name}}"/>
  +</#foreach>
  +<#else>
  +                    <f:param name="${parentName}${util.upper(parentPojo.identifierProperty.name)}" 
  +                           value="${'#'}{${parentName}.${parentPojo.identifierProperty.name}}"/>
  +</#if>
  +                </s:link>
  +            </ice:column>
  +       </ice:dataTable>
  +       
  +    </div>
  +    </ice:panelTab>
  +</#if>
  +<#if c2h.isOneToManyCollection(property)>
  +
  +   <ice:panelTab label="${property.name}">
  +    <div class="association" id="view${property.name}ChildrenId">
  +        
  +<#assign childPojo = c2j.getPOJOClass(property.value.element.associatedClass)>
  +<#assign childPageName = childPojo.shortName>
  +<#assign childEditPageName = childPojo.shortName + "Edit">
  +<#assign childName = util.lower(childPojo.shortName)>
  +<#assign childHomeName = childName + "Home">
  +        <h:outputText value="No ${property.name}" 
  +	                 id="view${property.name}ChildTextId"
  +                   rendered="${'#'}{empty ${homeName}.${property.name}}"/>
  +        
  +        <ice:dataTable value="${'#'}{${homeName}.${property.name}}" 
  +                       var="${childName}" 
  +                  rendered="${'#'}{not empty ${homeName}.${property.name}}" 
  +                rowClasses="rvgRowOne,rvgRowTwo"
  +		    columnClasses="allCols"
  +                        id="view${property.name}TableId">
  +<#foreach childProperty in childPojo.allPropertiesIterator>
  +<#if !c2h.isCollection(childProperty) && !c2h.isManyToOne(childProperty)>
  +<#if childPojo.isComponent(childProperty)>
  +<#foreach componentProperty in childProperty.value.propertyIterator>
  +            <ice:column id="view${componentProperty.name}Id">
  +                <f:facet name="header">${componentProperty.name}</f:facet>
  +                ${'#'}{${childName}.${childProperty.name}.${componentProperty.name}}
  +            </ice:column>
  +</#foreach>
  +<#else>
  +            <ice:column id="view${childProperty.name}Id">
  +                <f:facet name="header">${childProperty.name}</f:facet>
  +                <h:outputText id="view${childProperty.name}TextId" 
  +		           value="${'#'}{${childName}.${childProperty.name}}"/>
  +            </ice:column>
  +</#if>
  +</#if>
  +</#foreach>
  +            <ice:column>
  +                <f:facet name="header">action</f:facet>
  +                <s:link id="select${childName}LinkId" 
  +                     value="Select" 
  +                      view="/${childPageName}.xhtml">
  +<#if childPojo.isComponent(childPojo.identifierProperty)>
  +<#foreach componentProperty in childPojo.identifierProperty.value.propertyIterator>
  +                    <f:param name="${childName}${util.upper(componentProperty.name)}" 
  +                            value="${'#'}{${childName}.${childPojo.identifierProperty.name}.${componentProperty.name}}"/>
  +</#foreach>
  +<#else>
  +                    <f:param name="${childName}${util.upper(childPojo.identifierProperty.name)}" 
  +                            value="${'#'}{${childName}.${childPojo.identifierProperty.name}}"/>
  +</#if>
  +                    <f:param name="${childName}From" value="${entityName}"/>
  +                </s:link>
  +            </ice:column>
  +        </ice:dataTable>
  +        
  +     </div>
  +    
  +    <div class="actionButtons">
  +        <s:button id="viewAdd${childName}ButtonId" 
  +               value="Add ${childName}"
  +                view="/${childEditPageName}.xhtml">
  +            <f:param name="${componentName}${util.upper(pojo.identifierProperty.name)}" 
  +                    value="${'#'}{${homeName}.instance.${pojo.identifierProperty.name}}"/>
  +            <f:param name="${childName}From" value="${entityName}"/>
  +        </s:button>
  +    </div>        
  +   </ice:panelTab>
  +</#if>
  +</#foreach>
  +<#if hasAssociations>
  +</ice:panelTabSet>
  +</ice:form>
  +</#if> 
  +</ui:define>
  +
  +</ui:composition>
  +
  
  
  
  1.3       +29 -17    jboss-seam/seam-gen/icefaces/view/viewproperty.xhtml.ftl
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: viewproperty.xhtml.ftl
  ===================================================================
  RCS file: viewproperty.xhtml.ftl
  diff -N viewproperty.xhtml.ftl
  --- /dev/null	1 Jan 1970 00:00:00 -0000
  +++ viewproperty.xhtml.ftl	15 Sep 2007 02:30:00 -0000	1.3
  @@ -0,0 +1,73 @@
  +<#if !property.equals(pojo.identifierProperty) || property.value.identifierGeneratorStrategy == "assigned">
  +<#if c2j.isComponent(property)>
  +<#foreach componentProperty in property.value.propertyIterator>
  +<#assign propertyType = componentProperty.value.typeName>
  +
  +        <s:decorate id="${componentProperty.name}" template="layout/display.xhtml">
  +            <ui:define name="label">${componentProperty.name}</ui:define>
  +<#if propertyType == "date">
  +            <ice:outputText id="view${componentProperty.name}TextId"
  +	                 value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}">
  +                <s:convertDateTime type="date" dateStyle="short"/>
  +            </ice:outputText>
  +<#elseif propertyType == "time">
  +             <ice:outputText id="view${componentProperty.name}TextId" 
  +	                  value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}">
  +                <s:convertDateTime type="time"/>
  +             </ice:outputText>
  +<#elseif propertyType == "timestamp">
  +            <ice:outputText id="view${componentProperty.name}TextId"
  +	                 value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}">
  +                <s:convertDateTime type="both" dateStyle="short"/>
  +            </ice:outputText>
  +<#elseif propertyType == "big_decimal">
  +            <ice:outputText id="view${componentProperty.name}TextId"
  +	                 value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}">
  +                <f:convertNumber/>
  +            </ice:outputText>
  +<#elseif propertyType == "big_integer">
  +            <ice:outputText id="view${componentProperty.name}TextId"
  +	                 value="${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}">
  +                <f:convertNumber integerOnly="true"/>
  +            </ice:outputText>
  +<#else>
  +            ${'#'}{${homeName}.instance.${property.name}.${componentProperty.name}}&#160;
  +</#if>
  +        </s:decorate>
  +</#foreach>
  +<#else>
  +<#assign propertyType = property.value.typeName>
  +
  +        <s:decorate id="${property.name}" template="layout/display.xhtml">
  +            <ui:define name="label">${property.name}</ui:define>
  +<#if propertyType == "date">
  +            <ice:outputText id="view${property.name}TextId"
  +	                 value="${'#'}{${homeName}.instance.${property.name}}">
  +                <s:convertDateTime type="date" dateStyle="short"/>
  +            </ice:outputText>
  +<#elseif propertyType == "time">
  +            <ice:outputText id="view${property.name}TextId"
  +	                 value="${'#'}{${homeName}.instance.${property.name}}">
  +                <s:convertDateTime type="time"/>
  +            </ice:outputText>
  +<#elseif propertyType == "timestamp">
  +            <ice:outputText id="view${property.name}TextId"
  +	                 value="${'#'}{${homeName}.instance.${property.name}}">
  +                <s:convertDateTime type="both" dateStyle="short"/>
  +            </ice:outputText>
  +<#elseif propertyType == "big_decimal">
  +            <ice:outputText id="view${property.name}TextId"
  +	                 value="${'#'}{${homeName}.instance.${property.name}}">
  +                <f:convertNumber/>
  +            </ice:outputText>
  +<#elseif propertyType == "big_integer">
  +            <ice:outputText id="view${property.name}TextId"
  +	                 value="${'#'}{${homeName}.instance.${property.name}}">
  +                <f:convertNumber integerOnly="true"/>
  +            </ice:outputText>
  +<#else>
  +            ${'#'}{${homeName}.instance.${property.name}}&#160;
  +</#if>
  +        </s:decorate>
  +</#if>
  +</#if>
  
  
  



More information about the jboss-cvs-commits mailing list