在JSP

2017-10-20 40 views
0

使用模型值作爲豆鑑於以下控制器:在JSP

@Controller 
public class LandingPageController { 
    @RequestMapping(value = "/landingPage", method = RequestMethod.GET) 
    public String landingPage(Map<String, Object> model) { 
     model.put("page", new LandingPage()); 
     return "landingPage"; 
    } 
} 

這將是我的jsp:

<c:forEach items="${page.links}" var="link"> 
    <a href="${link.reference}">${link.label}</a> 
</c:forEach> 

的IntelliJ顯示以下警告:

無法解析變量'page'

使用的quickfix,增加的IntelliJ:

<jsp:useBean id="page" scope="request" type="com.myApp.LandingPage"/> 

這回導致重複的變量例外上加載該網站。

現在我的問題:

我如何定義在JSP(包括其類型)的變量,而無需創建重複**

+0

如果刪除useBean,忽略IntelliJ警告並部署並運行應用程序,會發生什麼情況? –

+0

感謝您的回覆。 該頁面正確無誤地顯示。 – Streetshark

+0

所以你可以刪除你的問題。 –

回答

0
<%[email protected] id="page" type="com.myApp.LandingPage"--%> 
<c:forEach items="${page.links}" var="link"> 
    <a href="${link.reference}">${link.label}</a> 
</c:forEach> 

使用@elvariable,類型的信息?現在可用,IntelliJ提供代碼完成以及警告如果方法(本例中爲getLinks)不存在

請參閱question