2012-10-08 6 views
0
내가 스트럿츠와 다운 목록을 선택 드롭을 채우는 시도

아래 태그를 선택 드롭을 채울 수 있지만, 제대로 동작하지 않습니다 :Struts2 목록

을 내 액션 클래스가 있습니다

개인 정수 anneeResultat을;

다음
public class AnneeResultat { 
    private Integer keyAnnee; 
    private String valueAnnee;   
    public AnneeResultat() {  
    } 
    public AnneeResultat(Integer key, String value) { 
     super(); 
     this.keyAnnee = key; 
     this.valueAnnee = value; 
    } 
    public Integer getKey() { 
     return keyAnnee; 
    } 
    public void setKey(Integer key) { 
     this.keyAnnee = key; 
    } 
    public String getValue() { 
     return valueAnnee; 
    } 
    public void setValue(String value) { 
     this.valueAnnee = value; 
    } 
} 

내 JSP 페이지에서 사용되는 선택 태그입니다 : 여기

private List<AnneeResultat> anneeResultatList = new ArrayList<AnneeResultat>(); 


public Integer getAnneeResultat() { 

     return anneeResultat; 
    } 
    public void setAnneeResultat(Integer anneeResultat) { 
     this.anneeResultat = anneeResultat; 
    } 


public List<AnneeResultat> getAnneeResultatList() { 
    this.anneeResultatList.add(new AnneeResultat(2005,"2005")); 
    this.anneeResultatList.add(new AnneeResultat(2006,"2006")); 
    this.anneeResultatList.add(new AnneeResultat(2007,"2007")); 
    this.anneeResultatList.add(new AnneeResultat(2008,"2008")); 
    this.anneeResultatList.add(new AnneeResultat(2009,"2009")); 
    this.anneeResultatList.add(new AnneeResultat(2010,"2010")); 
    this.anneeResultatList.add(new AnneeResultat(2011,"2011")); 
     return this.anneeResultatList; 
    } 
    public void setAnneeResultatsList(List<AnneeResultat> anneeResultatList) { 
     this.anneeResultatList = anneeResultatList; 
    } 
    public String execute(){ 
    return SUCCESS; 
    } 

는 클래스 AnneeResultat입니다. 내 페이지에 타일을 사용합니다. 내 페이지의 첫 번째 버전은 다음과 같습니다.

결과적으로 내 페이지에서 선택 태그가 빈 요소로 선택 상자를 생성합니다. 선택 상자에서 값을 볼 수 없습니다. 값이 표시되지 않습니다. 생성 된 코드이다 :

<s:select name="anneeResultat" label="Année de résultats" list="anneeResultatList" key="keyAnnee" value="valueAnnee"></s:select> 

해시 코드 (Hashcode)은 선택 상자 목록 인쇄 : 난 다음 선택 태그를 사용

<select name="anneeResultat" id="choices_anneeResultat"> 
    <option value=""></option> 
    <option value=""></option> 
    <option value=""></option> 
    <option value=""></option> 
    <option value=""></option> 
    <option value=""></option> 
    <option value=""></option> 
</select> 

.

생성 된 코드는 다음과 같습니다

<select name="anneeResultat" id="choices_anneeResultat"> 
    <option value="[email protected]">[email protected]</option> 
    <option value="[email protected]">[email protected]</option> 
    <option value="[email protected]">[email protected]</option> 
    <option value="[email protected]">[email protected]</option> 
    <option value="[email protected]">[email protected]</option> 
    <option value="[email protected]">[email protected]</option> 
    <option value="[email protected]">[email protected]</option> 
</select> 

나는이 문제를 해결하기 위해 수행하는 방법을 모르겠어요. 누군가 아이디어가 있다면 환영 할 것입니다.

답변

2

AnneeResultat에서 생성자를 삭제하고 JSP에서 아래의 select 태그를 사용하십시오.

<s:select name="anneeResultat" label="Année de résultats" 
    list="anneeResultatList" key="keyAnnee" value="valueAnnee"></s:select> 
0

은 "listKey = 푸"이름이 같은 게터를 기대하지만, 값, 예를 들어 추가 "GET"로 명명 getFoo().

어느

는 "getKeyAnnee"에 게터의 이름을 변경하거나 표시 할 열의 listKey에 "키"

2

사용 "listValue"로 변경.

<s:select name="anneeResultat" label="Année de résultats" list="anneeResultatList" key="keyAnnee" listValue="valueAnnee"></s:select>