- PR -

フラグの利用について

投稿者投稿内容
(株)ぽち
ぬし
会議室デビュー日: 2002/09/10
投稿数: 376
投稿日時: 2004-12-28 16:41
こんがらがってきたので整理してみては。

[画面遷移]
JSPA(hogeボタン押下)

Servlet(JSPBへforward)

JSPB


問題が起こっているのはServletである。
JSPAから送られてくるパラメーター「srhflg」が取得できない。


よろしいでしょうか?



getParameterとgetAttribute(またはrequestとsession)の違いをわかって
いないようですので簡単にサンプルを作って動きを確認することをオスス
メします。

一つだけ。
request.getParameter()はGETやPOSTで送られてくるパラメーターを取得する。
request.getAttribute()は自分でsetAttribute()して始めてgetAttribute()できる。

ご自分でrequestにsetAttribute()をしていないですよね?
また、sessionも同じで、自分でsessionに入れない限りは使う必要もないです。


でもStrutsを使ってるようですので、私の知らない何かが働いているかもしれない。
# Struts使ったことないです

どちらにせよ、一度簡単なサンプルを作って試した方が良いかと。
pascal
常連さん
会議室デビュー日: 2004/04/29
投稿数: 29
お住まい・勤務地: 神奈川県
投稿日時: 2004-12-28 23:54
基本的なところから攻めてみては?
■Servlet側で、
 request .getParameter("srhflg");
System.out.println("srhflg");
とすると、nullとなりますか?

■srhflgという名前のパラメータを複数送信していることは無いですか?
Enumeration enum = request.getParameterValues("srhflg");
int cnt = 0;
while ( enum.hasNextElement() ) {
  System.out.println((String)enum.nextElement());
  System.out.println(i);
  i++;
}
とやれば、分かります。
■テスト用のJSPを作って、そこにsubmitして、同じことをやってみても結果は同じですか?
例えば、JSPAを
< document.forms[0].action = "/reselve/JSPa.do";
--
> document.forms[0].action = "foo.jsp";
などとして、foo.jspでServletと同じように、srhflgの値が取れるかやってみるとか。

思いつくまま書いてみましたが、どこか基本的なところを見落としているのではないでしょうか。


[ メッセージ編集済み 編集者: pascal 編集日時 2004-12-28 23:55 ]
桜月
常連さん
会議室デビュー日: 2004/10/01
投稿数: 27
お住まい・勤務地: 神奈川県
投稿日時: 2005-01-06 20:32
なかなか返信できず申し訳ありません。

どうもまだまだ基本がわかっていないようなので、
もう少し考えて(勉強して)見ようと思います。
(最近ようやく少しだけ理解できてきました。)

少し時間がかかりそうですが、
とりあえず簡単なサンプルを作成してみようと思います。

できたらまたご報告しようと思います。(少し時間がかかるかも知れませんが・・)

みなさん、暖かいご指導ありがとうございます。

スキルアップ/キャリアアップ(JOB@IT)