2017-07-07 6 views
0

サーブレットとJSPが初めてです。 最近、私はrequestDispatcherを使用してサーブレットからJSPにデータを送信しようとしています。JSPはrequest.getParameter()ではnullを返しますが、ELで値を表示します

これは責任の私のサーブレットのコードです:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 

     sampleClass sampleObject = new sampleClass(1, "myname"); 
     ObjectMapper mapper = new ObjectMapper(); 
     String jsonstring = mapper.writeValueAsString(sampleObject); 
     request.setAttribute("values", jsonstring); 
     request.setAttribute("valuees", "testing"); 
     request.getRequestDispatcher("/somejsp").forward(request, response); 
    } 

私のJSPのデータを取得するための責任を一部:

${values} 
${valuees} 
<% 
    //out.println(Message); 
    Enumeration enume = request.getParameterNames(); 
    for (Entry<String, String[]> entry : request.getParameterMap().entrySet()) { 
     String name = entry.getKey(); 
     String value = entry.getValue()[0]; 
     // ... 
    } 
    String value = request.getParameter("values"); 
    out.println(value); 
    String valuee = request.getParameter("valuees"); 
    out.println(valuee); 
%> 

しかし、私が手出力は次のようになります。

{ "N":1 、 "name": "myname"} null nullを確認する

ELが正しく出力されているのを見ると、imp Enumerationを使用すると、何も返されず、他の2つはnullを返します。

私はこれを理解しません。オンラインで解決策を見つけることができませんでした。

答えて

1

あなたはパラメータfoo=bar&baz=2のように、要求の一部として、ブラウザから送信さ(文字列で、属性(あなたが選択した名前で、リクエストに格納することを選択した任意のオブジェクト)を混乱させています。

関連する問題