2014-10-02 46 views
0

我正在做一個小型的spring項目,當我嘗試toi顯示數據迭代resultList時,resultList被設置,foreach循環超過4次,因爲有項目但是有一個例外,經過我意識到項目是retrive,但如果他們只是對象,而不是porper鑄類class Result這個原因當我嘗試調用getUrl()方法時(如果我打電話toString工作正常)任何幫助時chrash?spring <c:foreach isue jstl java

是這樣的控制器

@RequestMapping(value = "/search", method = RequestMethod.GET) 
public ModelAndView home(ModelMap model,@RequestParam(required=false,value="") String name) { 

     List<Result> result = googleSearchService.doSearch(name); 
     modelAndView.addObject("resultList",result);//<- after debub list is full of Result items 
     return modelAndView; 
} 

是這樣的視圖

<c:forEach items="${resultList}" var="item"> 
      <li><c:out value="${item.getUrl()}"/></li> 
     </c:forEach> 

結果類是一個內部類:

public class GoogleResults { 


private ResponseData responseData; 

public ResponseData getResponseData() { 
    return responseData; 
} 

public void setResponseData(ResponseData responseData) { 
    this.responseData = responseData; 
} 

public String toString() { 
    return "ResponseData[" + responseData + "]"; 
} 



static class ResponseData { 

    private List<Result> results; 

    public List<Result> getResults() { 
     return results; 
    } 

    public void setResults(List<Result> results) { 
     this.results = results; 
    } 

    public String toString() { 
     return "Results[" + results + "]"; 
    } 
} 


static class Result { 

    public String url; 

    private String title; 

    public String getUrl() { 
     return url; 
    } 

    public String getTitle() { 
     return title; 
    } 

    public void setUrl(String url) { 
     this.url = url; 
    } 

    public void setTitle(String title) { 
     this.title = title; 
    } 

    public String toString() { 
     return "Result[url:" + url + ",title:" + title + "]"; 
    } 
    } 
} 

跟蹤:

ava.lang.NullPointerException javax.el.BeanELResolver.invoke(BeanELResolver.java:159) org.apache.jasper.el.JasperELResolver.invoke(JasperELResolver.java:147) org.apache.el.parser.AstValue.getValue(AstValue.java :157) org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:187)

+0

使用的 2014-10-02 14:08:27

+0

有趣的是,我得到了javax.el.PropertyNotFoundException:Propiedad'url'no legible para el tipo com.leanupp.researcher.GoogleResults $結果 – Xenione 2014-10-02 14:14:00

+0

結果是一個靜態內部類的一些問題呢? – Xenione 2014-10-02 14:14:35

回答

2

Result應該被標記爲public