2016-09-22 78 views
0

我想在基於AngularJS和SpringMVC的web應用程序中使用ng-include。在Spring Web應用程序中使用ng-include不起作用

這是WEB-INF目錄下的樹:

/WEB-INF 
    /views 
     /fragmentPages 
      footer.jsp 
     index.jsp 

在我加入了映射/ fragmentPages資源dispatcherServelet.xml:

<mvc:resources mapping="/fragment/**" location="/WEB-INF/views/fragmentPages/" /> 

進入的index.jsp我做到了這一點:

<body ng-app="myApp"> 
    <div ng-controller="myCtrl"> 
     ... 
    </div> 
    <div ng-include="${servletContextPath}+'fragment/footer.jsp'"></div> 
</body> 

但在瀏覽器中查看源代碼我看到:

<div ng-include="/Project+'fragment/footer.jsp'"></div> 

和包含不起作用。

爲什麼?

UPDATE

我現在樹:

/resources 
    footer.jsp 
/WEB-INF 
    /views 
     /fragmentPages 
      footer.jsp 
     index.jsp 
在我的調度員

我做:

<mvc:resources mapping="/resources/**" location="/resources/" /> 
<mvc:resources mapping="/WEB-INF/**" location="/WEB-INF/" />  

在我的index.jsp,如果我使用:

<div ng-include="'${servletContextPath}/resources/footer.jsp'"></div> 

它的工作原理!

但是,相反,如果我使用:

<div ng-include="'${servletContextPath}/WEB-INF/views/fragmentPages/footer.jsp'"></div> 

沒有作品..這怎麼可能?

+0

你不需要的'+'和'滴答''。 JSP引擎只是取代了出現在jsp源文件中的$ {...}。 – meistermeier

+0

@meistermeier所以,我必須做什麼? – Dave

+0

'

'這一行。 – meistermeier

回答

0

答案是

@RequestMapping("/footer") 
    public String footer(){ 
    return "footer"; 
} 

<div ng-include="'footer'"></div> 
相關問題