2013-07-29 4 views
0

간단한 폼 (검색 용)과 dataTable (검색 결과 용)이있는 popupPanel이 있습니다. 양식을 제출하고 실패한 검색 결과를 채운 후에 dataTable을 다시 작성하려고합니다. 여기에 내가 내 데이터 테이블을 다시 쓰게 할 수없는 이유 소스 코드popupPanel에서 구성 요소 다시 읽기가 실패합니다.

<ui:composition xmlns="http://www.w3.org/1999/xhtml" 
    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" 
    xmlns:rd2="http://www.logica.com/raindance/webcomp" 
    xmlns:a4j="http://richfaces.org/a4j" template="/layout/template.xhtml"> 

    <ui:define name="head"> 

    </ui:define> 
    <ui:define name="body" > 


    ....................................... 


    <rich:popupPanel id="ruleSearchPanel" width="600" lenght="400" autosized="true"> 
      <f:facet name="header"> 
       <h:panelGroup id="modelPanelHeader">      
        <h:outputText styleClass="modalpanel-header" 
         value="Search and select a rule set"></h:outputText> 
       </h:panelGroup> 
      </f:facet> 

      <h:form id="searchForm">     
       <h:panelGrid columns="2" styleClass="center" width="100%"> 
        <h:inputText id="searchForKey" value="#{authRuleRegisterManager.rulSetSearchCriteria}"/>      
        <a4j:commandButton id="SearchRuleSets" styleClass="plain-btn fright" reRender="ruleSearchPanel" 
          value="#{messages.search}" type="submit" action="#{authRuleRegisterManager.searchAuthRulesMap(authRuleRegisterManager.rulSetSearchCriteria)}" 
        />         
      </h:panelGrid>  

     <rich:extendedDataTable id="resultRuleSets" 
      value="#{authRuleRegisterManager.searchResultsForAuthRuleSets}" selectedClass="active-row" 
      rows="#{systemSettingsAction.systemSettings.paginationRows.value}" 
      var="ruleSet" 
      rowClasses="odd-row-selectable,even-row-selectable" 
      selectionMode="single"> 

      <rich:column label="ruleset name" 
       headerClass="left" 
       styleClass="left" width="70"> 
       <f:facet name="header"> 
        <h:outputText value="name" styleClass="right" /> 
       </f:facet> 
       <h:outputText value="#{ruleSet.description}" /> 
      </rich:column> 
     </rich:extendedDataTable>     
      </h:form>  
    </rich:popupPanel>   
     </ui:define> 
    </ui:composition> 

내가 여기서 뭔가를 그리워입니까? 도움이 될 것입니다.

+0

에 대한 rich:extendedDataTable

label에 대한 rich:popupPanel

selectedClass 예를 들어

lenght 동안 나는 많은 앤디, 당신은 내 일을 :) 저장 4.2.3 – Yashar

답변

2

사용중인 버전이 <a4j:commandButton> 인 경우 reRender 속성이 없습니다. 아래의 태그 참조를 확인할 수 있습니다

a4j:commandButton. 당신은 단순히 당신이 결정에 대해 혼란스러워하는 경우

reRender="ruleSearchPanel" 

render ="searchForm:resultRuleSets" 

에 변경 dataTable를 업데이트하려면 제가 보는 코드를 기반으로

(ui:composition은 고려하지 않음) 아래 링크를 확인하십시오.

How can I know the id of a JSF component so I can use in Javascript

참고 : 사용중인 일부 특성은 사용중인 일부 구성 요소에 정의되어 있지 않습니다. rich:column

+0

감사를 richfaces을 사용하고 있습니다. 나는 다른 오래된 프로젝트의 다른 부분에서 소스 코드를 복사했고,이 혼란을 야기했다. 이제이 라인을 추가하여 작업하고 있습니다. render = "searchForm : resultRuleSets" – Yashar

+0

추가 힌트를 주셔서 감사합니다. – Yashar

+0

@ Yashar 환영합니다 :) – Andy

관련 문제