2012-02-19 41 views
0

我是Java服務器編程的新手,我試圖使用Google應用引擎。如何使用從servlet獲取數據到JSP

下面的代碼是一個servlet:

@Override 
public void doGet(HttpServletRequest req, HttpServletResponse resp) 
     throws ServletException, IOException { 
    req.setAttribute("message", "Hi from servlet!"); 
    req.getRequestDispatcher("/my_page.jsp").forward(req, resp); 
} 

而下面的代碼是在my_page.jsp

<%= request.getAttribute("message") %> 

在哪裏我希望看到Hi from servlet!在結果頁中,我看到null

(如果我嘗試使用${message},我得到任何輸出)

什麼是從一個servlet到JSP獲取數據的正確方法?

+0

這是正確的方法。你有什麼錯誤嗎? – 2012-02-19 22:56:51

+0

沒有錯誤,輸出只是一個「空」 – andypaxo 2012-02-19 22:59:39

回答

1

您需要讓請求URL(如您在瀏覽器地址欄中看到的那樣)指向一個URL,該URL與在web.xml中配置的servlet的URL模式相匹配,而不是與JSP文件本身的URL配置相匹配。最好的做法是將JSP放在/WEB-INF文件夾中,這樣你就不會「意外」地在不調用servlet的情況下調用它。

順便說一下,${message}是正確的方式,應該優先於老式的scriptlets

相關問題