2017-02-03 5 views
1

javax.servlet.http.HttpServletRequestインスタンスからフォームデータを抽出しようとしました。オンラインで推薦したように私はrequest.getParameter(String paramKey)を試しましたが、動作しませんでした。 request.getParameterValues(),request.getParameterNames()およびrequest.getParameterMap()はフォームデータも返しません。私が望むのは、フォームデータを持つマップか、それを取得する別の方法です。Java HttpServletのPOSTペイロードからHTTPフォームデータを取得する方法は?

+0

[JavaサーブレットにPOST要求から取得要求ペイロード(の可能性のある重複http://stackoverflow.com/questions/14525982/getting-request-payload-from-post -request-in-java-servlet) –

答えて

1

コードrequest.getParameter()を記述する場所で動作します。 このことは、以下に述べるように、必ずサーブレットのdoGetPost()メソッドに書き込む必要があります。次の例を参照してください。

public void doGet(HttpServletRequest req, HttpServletResponse res) 
throws ServletException, IOException { 

    String id = req.getParameter("realname"); 
    String password = req.getParameter("mypassword"); 
} 

public void doPost(HttpServletRequest req, HttpServletResponse res) 
throws ServletException, IOException { 

    String id = req.getParameter("realname"); 
    String password = req.getParameter("mypassword"); 
} 
0

オーバーライドする必要があるいくつかの方法があります。受け取った要求タイプがPOSTのときに実行されるのはdoPost(), doGet(), service()

doPost()です。

doGet()は、受信したリクエストタイプがGETのときに実行されます。

両方の投稿に対して1つのメソッドを実行したい場合は、service()メソッドを使用することをお勧めします。

例:

public class TestServlet{ 

    public void service(HttpServletRequest request, HttpServletResponse response){ 

     request.getParameter("paramterName"). 
    } 
} 
関連する問題