質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

1回答

12883閲覧

JSPの値をgetParameterできない

Sfidante

総合スコア90

JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2015/04/20 02:36

こんにちは、プログラミング初心者なのですが、
JSPとJAVAにおいてgetParameterで値を取得したいのですが、
取得できず困っています。
以下に関連のあると思われるソースを記載致しますので、
ご教授願います。

こちらの<input type="hidden" value='<c:out value="${ honzitsunokouho.pair_id }"/>' name="pairid">のpair_idの値を取得したいです。

lang

1<c:forEach var="honzitsunokouho" items="${ sessionScope.pair_today }"> 2 <ul class="box-pairlist"> 3 <li> 4 <a href="Serv01.do?ope=6"> 5 <div><span class="label-treated"><input type="hidden" value='<c:out value="${ honzitsunokouho.pair_id }"/>' name="pairid"></span> 6 <div class="photo"> 7 <div><!-- photo --> 8 <img class="lazy" 9 data-original="https://graph.facebook.com/${ honzitsunokouho.photo1 }/picture?width=120&height=120" 10 width="120" 11 height="120" 12 alt="" /> 13 <span class="new"></span> 14 </div> 15 <div><!-- photo --> 16 <img class="lazy" 17 data-original="https://graph.facebook.com/${ honzitsunokouho.photo2 }/picture?width=120&height=120" 18 width="120" 19 height="120" 20 alt="" /> 21 <span class="new"></span> 22 </div> 23 </div> 24 <div class="info"> 25 <ul class="profile"> 26 <li> 27 <span class="name">${ honzitsunokouho.name1 }(${ honzitsunokouho.age1 })</span> 28 <span class="job">${ honzitsynokouho.employment1 }${ honzitsunokouho.school1 }</span> 29 </li> 30 <li> 31 <span class="name">${ honzitsunokouho.name2 }(${ honzitsunokouho.age2 })</span> 32 <span class="job">${ honzitsynokouho.employment2 }${ honzitsunokouho.school2 }</span> 33 </li> 34 <li class="shop">肉会のお店:${honzitsunokouho.shop }</li> 35 </ul> 36 </div> 37 </div> 38 </a> 39 </li> 40 </ul> 41 </c:forEach>

下記が取得する為のJAVAのソースコードです。
現状、System.out.println(pairID_onclick);で表示できていません。

lang

1beans = new JavaBeans(); 2 // DBに接続 3 dao.connect(); 4 // クリックした人のIDをhiddenフォームで取得(get?) 5 int pairID_onclick = Integer.parseInt(request.getParameter("pairid")); 6 // 取得したidを引数にそのペアの情報を取得し、リクエストスコープに格納 7 System.out.println(pairID_onclick); 8 request.setAttribute("pairone", dao.selectPairOne(pairID_onclick));

また、エラーの状況ですが、
JSPの部分で<input type="hidden" value='<c:out value="${ honzitsunokouho.pair_id }"/>' name="pairid">のtype="text"にすると求めている値は表示できています。
しかし、そのtextbox内をクリックするとエラーがでてしまいます。
また、getParameterして画面遷移させたいのですが、
画面遷移させる為の部分をクリックしてもエラーが出てしまいます。

原因はスコープなのか、単純にJSPの記載ミスなのかわかりません。
説明が下手、かつ初歩的な質問で申し訳ありません。
何卒よろしく御願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

パラメータの値がサーバーに渡ってきているのか、
そもそもパラメータがサーバに渡されていないのか、切り分けることから始めたらいかがでしょうか。

たとえば、JSPを介さずに直接サーバのURLを叩いてみればいいです。
http://ホスト名/Serv01.do?ope=6&pairid=hoge を直接ブラウザなどでアクセスすれば
サーバにpairidが渡ってくるのは確実ですよね?
この状態でサーバ側でパラメータの値が取得できた場合は、JSPの書き方が悪いことがわかります。
サーバ側で値が取得できなければ、サーバ側での取得方法が悪いことがわかります。

投稿2015/04/20 02:47

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Sfidante

2015/04/20 12:45

ご回答ありがとうございます。 現状、name="pairid"に関しましてはしっかりと取得てきており、 それを表示させるには至っております。 しかし、そのpairidをjavaでgetParameterで取得したいのですが、 できない状況になっております。 途中経過としてSystem.out.println(pairID_onclick);で取得できているのか 確認しているのですが、出来ていないようなのです。 理解の仕方が間違っていたらすみません。 よろしく御願い致します。
Sfidante

2015/04/21 02:12

applepenguinさんの言っていることが理解できました。 ご迷惑御かけしました。 無事にパラメータの値を取得でき、 意図したように表示できました。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問