[英]Include a private JSP from a Servlet
我讓我的Servlet響應所有“/”url-pattern。 在內部我需要有時渲染html,所以我想。包含一個JSP頁面,但我希望外部無法訪問.jsp。 另外,我如何將模型對象傳遞給它。
我想。包含一個JSP頁面,但我希望外部無法訪問.jsp。
把它放在/WEB-INF
文件夾中。 客戶端無法訪問它,但RequestDispatcher
可以訪問它。
request.getRequestDispatcher("/WEB-INF/page.jsp").forward(request, response);
另外,我如何將模型對象傳遞給它。
將其設置為請求屬性。
request.setAttribute("bean", bean); // It'll be available as ${bean} in JSP.
也就是說,請注意將servlet映射到/
接管servletcontainer的內置DefaultServlet
以提供靜態內容。 您必須自己處理所有靜態文件,如JS / CSS /圖像。 考慮為JSP視圖選擇更具體的url-pattern
如/pages/*
或*.do
。 如本答案中所述,最終將Filter
放在前面。
這很簡單:
getServletContext().getRequestDispatcher("/WEB-INF/path/your.jsp").forward(request, response);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.