0 Replies Latest reply on Jul 11, 2008 4:01 AM by michi_h

    Problem with rich:calendar in rich:dataTable header

    michi_h

      Hello,
      I'm using a rich:dataTable to list some data and I'm using the header to filter these records (e.g. inputfields, etc.). I'm also using a rich:calendar in one of the column headers to filter dates in the dataTable. Everythings works fine until I'm rerendering the table the first time. Then the calendar stops to popup when i click on the input field. The first time it works fine.
      I'm using Richfaces 3.2.1.GA
      Here's the code of my table:

      <h:panelGrid columns="1" styleClass="projectInformationTable">
       <rich:datascroller align="center" width="100%" for="projInfoList"
       maxPages="20" page="#{userInformation.currentPage}"
       reRender="sc2" id="sc1" />
       <rich:dataTable value="#{userInformation.projInformationList}"
       var="projInfo" id="projInfoList"
       styleClass="projectInformationTable" rows="15">
       <f:facet name="header">
       <rich:columnGroup>
       <rich:column>
       <h:outputText value="#{messages.table_user}" />
       </rich:column>
       <rich:column>
       <h:outputText value="#{messages.table_project}" />
       </rich:column>
       <rich:column>
       <h:outputText value="#{messages.table_phase}" />
       </rich:column>
       <rich:column>
       <h:outputText value="#{messages.table_workpackage}" />
       </rich:column>
       <rich:column>
       <h:outputText value="#{messages.table_task}" />
       </rich:column>
       <rich:column>
       <h:outputText value="#{messages.table_date}" />
       </rich:column>
       <rich:column>
       <h:outputText value="#{messages.table_spent_hours}" />
       </rich:column>
       </rich:columnGroup>
       </f:facet>
      
       <rich:column filterMethod="#{userInformation.filterUser}">
       <f:facet name="header">
       <h:panelGrid columns="1">
       <h:inputText value="#{userInformation.userFilterValue}"
       id="userFilterInput">
       <a4j:support event="onkeyup" reRender="projInfoList"
       ignoreDupResponses="true" requestDelay="700"
       focus="userFilterInput" />
       </h:inputText>
       <a4j:commandLink id="sortByUser" reRender="projInfoList"
       action="#{userInformation.sortBy('USER')}">
       <h:outputText value="#{messages.sort}" />
       </a4j:commandLink>
       </h:panelGrid>
       </f:facet>
       <h:outputText
       value="#{projInfo.user.surename} #{projInfo.user.givenName}" />
       </rich:column>
       <rich:column filterMethod="#{userInformation.filterProject}">
       <f:facet name="header">
       <h:panelGrid columns="1">
       <h:inputText value="#{userInformation.projectFilterValue}"
       id="projectFilterInput">
       <a4j:support event="onkeyup" reRender="projInfoList"
       ignoreDupResponses="true" requestDelay="700"
       focus="projectFilterInput" />
       </h:inputText>
       <a4j:commandLink id="sortByProject" reRender="projInfoList"
       action="#{userInformation.sortBy('PROJ')}">
       <h:outputText value="#{messages.sort}" />
       </a4j:commandLink>
       </h:panelGrid>
       </f:facet>
       <h:outputText
       value="#{projInfo.task.partOf.phase.project.projectShortDescription}" />
       </rich:column>
       <rich:column filterMethod="#{userInformation.filterPhase}">
       <f:facet name="header">
       <h:panelGrid columns="1">
       <h:inputText value="#{userInformation.phaseFilterValue}"
       id="phaseFilterInput">
       <a4j:support event="onkeyup" reRender="projInfoList"
       ignoreDupResponses="true" requestDelay="700"
       focus="phaseFilterInput" />
       </h:inputText>
       <a4j:commandLink id="sortByPhase" reRender="projInfoList"
       action="#{userInformation.sortBy('PHASE')}">
       <h:outputText value="#{messages.sort}" />
       </a4j:commandLink>
       </h:panelGrid>
       </f:facet>
       <h:outputText value="#{projInfo.task.partOf.phase.title}" />
       </rich:column>
       <rich:column filterMethod="#{userInformation.filterWorkpackage}">
       <f:facet name="header">
       <h:panelGrid columns="1">
       <h:inputText value="#{userInformation.workpackageFilterValue}"
       id="workpackageFilterInput">
       <a4j:support event="onkeyup" reRender="projInfoList"
       ignoreDupResponses="true" requestDelay="700"
       focus="workpackageFilterInput" />
       </h:inputText>
       <a4j:commandLink id="sortByWP" reRender="projInfoList"
       action="#{userInformation.sortBy('WP')}">
       <h:outputText value="#{messages.sort}" />
       </a4j:commandLink>
       </h:panelGrid>
       </f:facet>
       <h:outputText value="#{projInfo.task.partOf.description}" />
       </rich:column>
       <rich:column filterMethod="#{userInformation.filterTask}">
       <f:facet name="header">
       <h:panelGrid columns="1">
       <h:inputText value="#{userInformation.taskFilterValue}"
       id="taskFilterInput">
       <a4j:support event="onkeyup" reRender="projInfoList"
       ignoreDupResponses="true" requestDelay="700"
       focus="taskFilterInput" />
       </h:inputText>
       <a4j:commandLink id="sortByTask" reRender="projInfoList"
       action="#{userInformation.sortBy('TASK')}">
       <h:outputText value="#{messages.sort}" />
       </a4j:commandLink>
       </h:panelGrid>
       </f:facet>
       <h:outputText value="#{projInfo.task.description}" />
       </rich:column>
       <rich:column filterMethod="#{userInformation.filterDate}">
       <f:facet name="header">
       <h:panelGrid columns="1">
       <a4j:outputPanel id="startdate" layout="block">
       <rich:calendar id="startDateCalendar"
       value="#{userInformation.startDateFilterValue}" popup="true">
       <a4j:support event="onchanged" reRender="projInfoList"
       ignoreDupResponses="true" requestDelay="700" />
       </rich:calendar>
       </a4j:outputPanel>
       <a4j:outputPanel id="enddate" layout="block">
       <rich:calendar id="endDateCalendar"
       value="#{userInformation.endDateFilterValue}" popup="true">
       <a4j:support event="onchanged" reRender="projInfoList"
       ignoreDupResponses="true" requestDelay="700" />
       </rich:calendar>
       </a4j:outputPanel>
       <a4j:commandLink id="sortByDate" reRender="projInfoList"
       action="#{userInformation.sortBy('DATE')}">
       <h:outputText value="#{messages.sort}" />
       </a4j:commandLink>
       </h:panelGrid>
       </f:facet>
       <h:outputText value="#{projInfo.date}">
       <s:convertDateTime dateStyle="long" type="both" />
       </h:outputText>
       </rich:column>
       <rich:column>
       <f:facet name="header">
       <a4j:commandLink id="sortByHours" reRender="projInfoList"
       action="#{userInformation.sortBy('HOUR')}">
       <h:outputText value="#{messages.sort}" />
       </a4j:commandLink>
       </f:facet>
       <h:outputText value="#{projInfo.hours} h" />
       </rich:column>
       </rich:dataTable>
       <rich:datascroller align="center" width="100%" for="projInfoList"
       maxPages="20" page="#{userInformation.currentPage}"
       reRender="sc1" id="sc2" />
       </h:panelGrid>
      


      Any idea what may be wrong or is this an bug?
      Thanks in advance.