2012-02-19 16 views
0

私はJavaサーバープログラミングを初めて使い、Googleのアプリケーションエンジンを使用しようとしています。サーブレットからJSPにデータを取得する方法

@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である:

次のコードは、サーブレットであり、私は結果のページにHi from servlet!を見ることを期待する

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

は、私がnullを参照してください。

(私は${message}を使用してみた場合、私は全くの出力を取得していない)

JSPにサーブレットからデータを取得するための正しい方法は何ですか?

+0

これは正しい方法です。何かエラーがありますか? –

+0

エラーなし、出力上の「null」 – andypaxo

答えて

1

リクエストURL(ブラウザのアドレスバーに表示されているもの)が、サーブレットのURLパターンと一致するURLを指すようにする必要があります。コンフィグレーションはweb.xmlで、JSPファイル自体のURLではありません。最良の方法は、JSPを/WEB-INFフォルダに置くことです。サーブレットを呼び出さずに "誤って"呼び出すことはできません。

ちなみに、${message}は正しい方法であり、旧式のスクリプトレットより優先する必要があります。

関連する問題