我想從Spring-MVC控制器方法轉發我的請求到JSP頁面。從彈簧控制器轉發到jsp文件
我的控制器方法應該處理Ajax請求。通過將請求轉發到JSP文件,我想Ajax請求的響應是JSP文件的(動態)HTML 輸出。
我曾嘗試:
public ModelAndView ajaxResponse(HttpServletRequest request, HttpServletResponse response) {
request.setAttribute("command", "hello world");
request.getRequestDispatcher("jspfile").forward(request, response);
return null;
}
這失敗,我得到「HTTP狀態404」
「jspfiles」在瓷磚配置文件中被定義爲指向的實際JSP文件。當我運行下面的方法:
public String ajaxResponse(HttpServletRequest request, HttpServletResponse response) {
request.setAttribute("command", "hello world");
return "jspfile";
}
...我得到的文件作爲我的Ajax響應的內容 - 但該文件JSP標籤不解析) - 因此我的結論是我的地磚的定義是正確的( ???)。
我的JSP文件看起來像這樣:
<%=command%>
所以我想我的Ajax響應的字符串 「Hello World」。
你能告訴我如何實現我的目的的示例代碼?
具體來說,我需要知道:
應該是什麼控制器方法返回類型?
應該是什麼控制器方法實際的返回值(如果它的事項)?
我應該如何設置在
request.getRequestDispatcher(...)
JSP文件路徑,以便將認識?
你的第二個控制器看起來是正確的我 - 如果你瀏覽到調用該方法,而不是做它一個Ajax請求的URL會發生什麼? JSP是否正確顯示? – jeff 2012-01-13 19:51:05