2015-07-10 54 views
0

我正在嘗試使用jsp文件讀取ModelAndView文件並使用模型中的數據加載CSS和JavaScript,但沒有發生。有人可以建議我是否在jsp中正確使用標籤。如果不能在jsp中工作

JSP

<c:forEach var="entry" items="${data}"> 
    <c:if test="${entry == 'pageScripts'}"> 
     <script src="resources/core/js/application/" ${entry}></script> 
    </c:if> 
    <c:if test="${entry == 'css'}"> 
     <link rel="stylesheet" href="resources/core/css/application/" ${entry}> 
    </c:if> 

</c:forEach> 

控制器

public class IntroPageController extends DefaultController { 

    @RequestMapping(value = "/", method = RequestMethod.GET) 
    public String navigateToDashboard(final Model m) { 

     m.addAttribute("title", "Test Funda"); 
     return navigateWithModels(m, "introPage", "introPage", "introPage"); 
    } 


} 

默認控制器

public abstract class DefaultController { 

    private static Logger LOG = LoggerFactory 
      .getLogger(DefaultController.class); 

    public String navigateWithModels(final Model m, final String pageName,final String css, final String... pageScripts){ 
     m.addAttribute("pageScripts", pageScripts); 
     m.addAttribute("pageName", pageName); 
     m.addAttribute("css", css); 
     return "index"; 
    } 

} 
+0

一些語法錯誤,並突出顯示的代碼段 – Guy

回答

0

我想你可以跳過對$ {data}的引用並直接使用您添加到模型中的屬性。

所以,你的JSP片段會變成:

<script src="resources/core/js/application/" ${pageScripts}></script> 
<link rel="stylesheet" href="resources/core/css/application/" ${css}> 

你將不得不改變取決於什麼值你填充與屬性的參考位置。

0

我終於得到了答案:

<c:forEach var="entry" items="${pageScripts}"> 
<script src="resources/core/js/application/${entry}.js" ></script> 
</c:forEach>