2012-07-03 3 views
1

당신의 도움이 필요합니다.JSF 수동 새로 고침 문제

jsf2.0 및 primefaces 3.2를 사용하여 간단한 프로젝트를 개발 중입니다.

나는 2 페이지가 먼저 page1.xhtml의 WHCI가 포함되어 있습니다 :

 <p:column> 
      <p:panel header="#{ct.coTypeName}" > 
       <h:panelGrid columns="1" width="100" height="100"> 
        <h:outputText value="#{ct.coTypeId}" /> 




        <p:commandLink  action="distributer/distributersList.xhtml"> 
         <h:graphicImage url="/resources/images/homePagecartoonBusinessMan.jpg" width="100" height="100"/> 
         <f:param name="bt" value="dist" /> 
         <f:param name="ti" value="#{ct.coTypeId}" /> 
        </p:commandLink> 

       </h:panelGrid> 
      </p:panel> 

     </p:column> 

    </p:dataGrid> 

나는 아무튼 다른 페이지 A selectOneMenu이 "분배 자/distributersList.xhtml"저를 전달 명령 링크를 누르면 Internet Explorer 8에서만 사용하는 수동으로 페이지를 새로 고칠 때까지 항목을 표시하지 않지만 크롬이나 파이어 폭스에서는이 문제가 발생하지 않습니다. 도시에 대한

<p:selectOneMenu value="#{bussinessOwnersViewerMB.selectedCity}" effect="fold" immediate="true"> 

      <f:selectItems value="#{bussinessOwnersViewerMB.cities}" var="city" itemLabel="#{city.cityName}" itemValue="#{city.cityId}"/> 


     </p:selectOneMenu> 

게터가 ArrayList에 있습니다 : :

public ArrayList<CityDto> getCities() { 
    cities = cb.laodAllCities(); 
    System.out.println(">>>>"+cities.size()); 
     return cities; 
} 

시스템

은 내가 ..Webpage 오류 정보

Message: Object expected 
Line: 19 
Char: 1 
Code: 0 
URI: http://localhost:8089/pro/ 



Message: Object doesn't support this property or method 
Line: 1 
Char: 5500 
Code: 0 
URI: http://localhost:8089/pro/faces/javax.faces.resource/primefaces.js?   ln=primefaces&v=3.2 

selectonemenucode는 자바 스크립트 오류가 발생합니다. out .. arraylist 크기의 메시지를 올바르게 제공하지만 dropdownList 항목은 un로 표시되지 않습니다. 때까지 페이지를 새로 고침!

답변

0

f : selectItems 태그를 사용하면 itemLabel 및 itemValue 태그가 필요하지 않습니다. 당신은 F를 사용할 때 태그가 필요합니다 selectItem를 s'.Try '없이이 샘플 여기

 <f:selectItems value="#{bussinessOwnersViewerMB.cityList}" var="city"> 

입니다 샘플 방법을 점점 도시 당신 바인드

 List<SelectItem> cityList = new ArrayList<SelectItem>(); 
     for (City city : cities) { 
      SelectItem item = new SelectItem(); 
      item.setLabel(city.getCityName()); 
      item.setValue(city.getCityId()); 
      cityList.add(item); 
    } 

에 대한 F : cityList와 selectItems 값 (체크 그 위의) 원래 도시 목록을 바 꾸었습니다.

+0

답장을 보내 주신 Say Ye Yan Naing 예. 데이터는 이미 내 코드 샘플과 함께 표시되어 있습니다. 페이지를 새로 고칠 때까지 데이터가 표시되지 않는다는 것입니다. 내가 코드를 시도하고 같은 결과를 예상대로 .. 고맙습니다 다시 :) –

0

사랑은 IsLoaded 표시 같은 일 개 부울 변수를 가지고 한 일을하고 광맥 방법

`

if (isLoaded) 
    { 
     return; 
    } 
    isLoaded = true; 

` 을 코드 아래에 넣어 당신이 작동하는 int 페이지를 새로 고침 할 필요가 어디 아래 제발 elgohary

isLoaded=false; 
+0

감사 Jigar 파텔, 하지만 난 기가 빈과 이미 내 관리 빈 올바르게 ArrayList를 얻을 내 게시물을 편집 .. 그리고 어떤 식 으로든 SelectOneMenu 항목이 표시되지만 distributer.xhtml 페이지로 리디렉션 된 경우 요청과 함께 매개 변수를 전송할 때 리디렉션하지 않고 전달하려고합니다. –