- - PR -
Null値が返ってしまうのですが・・
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2003-11-18 20:45
お世話様です。基本的な事なんですが、悩んでます。'10001'の番号を文字列として入力してサーブレットに渡しているのですが、どうしても、Null値が返ってきてしまいます。今までこのようなことは無かったのですが、どのような原因が考えられるのでしょうか?くだらない質問ですが、宜しくお願いします。
アプリケーションサーバ Tomcatです。 htmlの一部 <form method="post" action="eigyou/kokyakuKensakuServlet"> <imput type="text" name="kokyakuid" size="20" maxlength="5"> サーブレットの一部 String kenKokyakuid = request.getParameter("kokyakuid"); System.out.println(kenKokyakuid); | ||||
|
投稿日時: 2003-11-18 23:12
×imput
○input では? | ||||
|
投稿日時: 2003-11-19 00:18
もう少し手がかりを下さい。 これだけだと予想する範囲が広すぎます。 </form>が欠けているとか。 サーブレットが違うとか。 確認として、 1.横取り丸等で通信内容を調べる。(入力内容が渡っているかどうか) 2.Servletのoutの前後にログを入れてみる。(期待しているServletに処理が渡されているか。) とか、自分か確認したけど、ここがこんな風に思うようになっていないようだ。 のように書いてくれると、もしかしたら何か答えられるかもしれません。 私では無理かも知れませんが、ほかの方がなんとか。。 | ||||
|
投稿日時: 2003-11-19 00:35
***.equals(kenKokyakuid)とかやったりしていませんよね・・・。
どこの文でnullPointerがでているか、print文を疑いのある部分においてみて、確認するのがひとつの手かと思われ・・・。 | ||||
|
投稿日時: 2003-11-19 08:20
nullが返ってきているって言ってるので、nullpointerは関係ないと思いますが? | ||||
|
投稿日時: 2003-11-19 08:43
おはようございます。
> System.out.println(kenKokyakuid); この出力結果はどのように確認されましたか? 当然ブラウザには反映されないと思うのですが・・・。 | ||||
|
投稿日時: 2003-11-19 08:56
nullPointerと勘違いしてしまいました・・・。すいませんでした。
| ||||
|
投稿日時: 2003-11-19 12:53
皆さま返答、大変感謝します。ServletとBeansの方はコンパイルエラーがでていないので、問題なのは、HTMLの方だと思われるのですが、いろいろとあやしい所を変更したりと試してみたのですが、未だ解決しません。Servletのパラメータを受けとる段階で、printを置いた結果がnullで出力されていましたので、やはり、htmlが問題と思うのですが、このソースコードに何かおかしい所がありましたら、ご指摘いただけたら幸いです。宜しくお願いします。
-:kokyakensaku.html <html> <head> <title> 顧客検索</title> </head> <body> <center> <h2>顧客検索</2> <form method="post" action="/eigyou/kokyakuKensakuServlet"> 顧客ID : <input type="text" name="kokyakuid" size="20" maxlength="5" autocomplete="off"> <br><br><br> <input type="submit" value="顧客情報検索" onclick="return confirm('この顧客IDでよろしいですか?');"> <input type="reset" value="リセット" ><br> </form> <a href="/eigyou/jsp/kokyakuMenu.jsp">顧客管理用画面に戻る</a> </center> </body> </html> -:kokyakuKensakuServlet import java.io.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*; import mybeans.*; public class kokyakuKensakuServlet extends HttpServlet{ public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ try{ System.out.println("kokyakukensakuServlet.javaはじまり"); //Servletコンテナと通信オブジェクト ServletContext sc = getServletContext(); //セッションオブジェクト HttpSession session = request.getSession(true); //kaishaKensakuBeansのオブジェクトの生成 kokyakuKensakuBeans kkb = new kokyakuKensakuBeans(); //エンコーディング request.setCharacterEncoding("Shift_JIS"); //パラメータをフォームより取得 String kenkokyakuid = request.getParameter("kokyakuid"); //パラメータのチェック System.out.println("kenkokyakuid"); request.setAttribute("kkb",kkb); //顧客の検索メソッド if(kkb.KennsakuID(kenkokyakuid) == true){ //リクエストスコープで保存 RequestDispatcher rd = sc.getRequestDispatcher("/jsp/kokyakuKensaku.jsp"); rd.forward(request,response); }else{ RequestDispatcher rd = sc.getRequestDispatcher("/html/kokyakuKensakuError.html"); rd.forward(request,response); } } catch(Exception e){ e.printStackTrace(); } } } | ||||
