2017-06-12 142 views
1

我想在我的welcomePage.jsp頁面上引用其他jsp頁面 - loginPage.jsp和registerPage.jsp。我試圖用這樣簡單:如何在另一個jsp頁面上引用一個jsp頁面?

<head> 
<title>${title}</title> 
</head> 
<body> 
    <jsp:include page="header.jsp"/>  
    <jsp:include page="_menu.jsp" /> 

    <h1>Welcome to the page!</h1> 
    <a href="registerPage.jsp">Register</a>   
    <p>or</p> 
    <a href="loginPage.jsp">Log In</a> 
    <p>if you already have an account</p> 

    <jsp:include page="footer.jsp"/> 
</body> 
</html> 

但我總是得到HTTP狀態404請求的資源不可用。

我也嘗試過,但結果是我引用的頁面的內容也只是在這個welcomePage上顯示。雖然我需要他們只能通過鏈接訪問。 所有提到的文件都位於WEB-INF /頁面中。 這是我第一個使用Spring MVC的項目,因此歡迎任何幫助。

+0

Spring MVC中的URL可能不同,所以儘量使用JSTL標籤或使用Apache瓷磚 –

回答

2

假設在您的配置中,您已設置視圖的位置,例如, /WEB-INF/view/在那裏你把所有的.jsp文件 - loginpage.jsp, registerPage.jsp等現在,你可以通過pageContext.servletContext.contextPath簡單地訪問視圖的位置,即/WEB-INF/view/

//For example 
href="${pageContext.servletContext.contextPath}/loginpage" 
0

我建議你先去控制器,而不是在這個控制器中調用ModelAndView。這也保持了JSP文件之間的關係清晰。

若要將此您的控制器類應該是這樣的:

@Controller 
public class LoginPageController { 
    @RequestMapping(value = "/login", method = RequestMethod.GET) 
    public ModelAndView printLoginPage() { 
     ModelAndView modelAndView = new ModelAndView("loginPage"); 
     return modelAndView; 
    } 
} 

您可以從一個JSP頁面通過控制器方法會也將參數傳遞到另一個。

+0

謝謝!我會試試這個。 –

+0

非常歡迎你,我希望這將解決您的問題! @ dark_matter88 – ahmetcetin

相關問題