0

誰かが私のために解決してくれることを願っている小さなバグがあります。

servlet1:

ここでの話は単純です-私はフォームを作成し、その中に画像を作成しました。この画像をクリックすると、servlet2に情報が送信されます。

public void f1(HttpServletRequest request, HttpServletResponse response) throws  
IOException
{
    response.setContentType("text/html"); 
    PrintWriter out = response.getWriter();
    out.print("<html></br>");
    out.print("<script language='javascript' type='text/javascript'   
    src='functions.js'></script></br>");
    out.print("<body></br>");
    out.print("<form method='post' name='mainForm' action='servlet2'><br/>");
    out.print("<img id='someId' src='someSrc' onclick='submit()'/><br/>");
    out.print("<label id='gameStatus'>Welcome!</label></br>");        
    out.print("</form></br>");
    out.print("</body>\n</html></br>");
}

OK、画像をクリックすると情報が送信されます(おそらく)

servlet2:

ここでは、先に提出したパラメータを印刷したいと思います。

protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();        
    Enumeration parameters = request.getParameterNames();        
    while (parameters.hasMoreElements())
    {            
        out.print((String)parameters.nextElement() + "<br/>");                
    }
}

unf。出力がnullなので、情報が送信されなかったと思います。問題はなぜですか?タイプミスはありますか?または論理的な問題?ありがとうございました!

4

1 に答える 1

1

渡そうとしている情報は何ですか?フォームに入力フィールドが表示されません。

フォームに入力を追加してみてください。2番目のサーブレットに表示されるかどうかを見てみましょう。

out.print("<form method='post' name='mainForm' action='servlet2'><br/>");
out.print("<input type='text' name='param1' value='test' /><br/>");
out.print("<img id='someId' src='someSrc' onclick='submit()'/><br/>");
out.print("<label id='gameStatus'>Welcome!</label></br>");  

param1が表示されているか確認してください。

于 2012-07-25T00:38:24.203 に答える