2011-08-01 4 views
0

JSTLのPersonオブジェクトの代わりに文字列オブジェクトを取得しています。ここでC:foreachはJSP2.0でString(Not Object)を返す

は私の.TAGファイル内のコードです:

<% 
List<Person> perList=(List<Person>)pageContext.getAttribute("myVehicles"); 
HashMap<String, com.info.PersonInfo> personRatingsMap=(HashMap<String, com.info.PersonInfo>)pageContext.getAttribute("personsMap"); 
com.info.PersonInfo rtg=null; 
int i=0; 
HashMap<String, Object> givenMap=null; 
String tempYear=null; 

for(Object obj : perList){ 
    Person currPer=(Person)obj; 
    tempYear=currPer.getYear(); 
    rtg=personRatingsMap.get(tempYear); 
    givenMap=mapValuePair.get(tempYear); 
    if(givenMap!=null){ 
     currPer.getNameset().get("PER").put("fname",givenMap.get("Per_NAME").toString()); 
     currPer.getNameset().get("PER").put("lname",givenMap.get("PerL_NAME").toString()); 
     currPer.getIdset().get("PER").put("myid",givenMap.get("myid").toString()); 
     currPer.setYear(givenMap.get("YEAR").toString()); 

    } 
    if(rtg !=null){ 
     currPer.setRating(rtg); 
    } 
    perList.set(i,currPer); 
    i++; 
} 

pageContext.setAttribute("myPersons",perList); 

%> 

<c:forEach items="myPersons" var="perFromList"> 
    <crp:getModelDefaultPhoto var="defaultPhoto" 
    makeid="${perID}" modelid="${perIID}" 
    year="${perFromList.year}" /> 
<c:if test="${!empty defaultPhoto.value and defaultPhoto.value != ''}"> 
<c:set target="${photomap}" property="${perFromList.year}" value="${defaultPhoto.name},${defaultPhoto.value}" /> 
</c:if> 

</c:forEach> 

私はこのエラーを取得しています:私は置くときので

Unable to find a value for "year" in object of class "java.lang.String" using operator "."

Blockquote

だから明確にforeachループではなく、Personオブジェクトの文字列を返します私のスクリプトレットのSystem.out.printlnコードは、それぞれのPesonがforeach内でそれに関連付けられている年を持っています。

本当にありがとうございます。

答えて

1

それはあなただけではなくmyPersonsが表すリストよりも、文字列"myPersons"なしで動作している、${...}なし

<c:forEach items="${myPersons}" var="perFromList"> 

ない

<c:forEach items="myPersons" var="perFromList"> 

でなければなりません。

0

これが動作するかどうかを参照してください:

<c:forEach items="${myPersons}" var="perFromList"> 
関連する問題