こんにちは。
少し文が長いですがよろしくお願いします。
AccessのDBから取得したint型の値を、セッションを使って保持したいのですが
while(rs.next()){
String name = rs.getString("NAME");
int value = rs.getInt("VALUE");
HttpSession session1 = req.getSession(true);
HttpSession session2 = req.getSession(true);
session1.setAttribute("Name", name);
session2.setAttribute("Value", value);
dispatcher2.include(req, res);
}
のコードの
session2.setAttribute("Value", value);
でコンパイルエラー
DBAccess.java [37:1]
javax.servlet.ServletRequest の setAttribute(java.lang.String,java.lang.Object) は (java.lang.String,int) に適用できません。
がでてうまくいきません。
セッションを使ってint型の値の保持を行うにはどうすればよいのでしょうか?
No.6ベストアンサー
- 回答日時:
>java.lang.NullPointerException
と言っていると言う事は、この場合、session.getAttribute("Value") で正しい
値が取得出来ていないと言う可能性があります。nullが返って来ているとか。。。
と、言う事は、setAttribute でちゃんと値をセット出来ていないか、セッションが切れちゃってるとか。。。
あ、それより、代入先の配列の宣言に問題があるとかは無いでしょうか?
配列は、ちゃんと、確保されていますか?
最初の補足欄では、配列の要素数を指定していませんでしたが。。。
可能性は、いろいろと考えられるので、ここでは、「これ!」と言う事は出来ません。
いろいろと調べてみて下さい。
原始的ですが、一行ごとに変数の値を表示する等してみれば、案外すぐにどれが問題なのかが
分かる場合が多いです。
>getValue()/putValue()は非推奨メソッドになりました。今のJ2EEでは通りません。
そうなんですか。。。
非推奨になっているんですか。。でも、非推奨だったら、通らないことは無いんじゃないですか?
推奨しないだけでは。。。?
でも、使わないに越したことは無いって言うことですね。
訂正ありがとうございました。
ご指摘どおり配列の宣言に問題がありました。
配列の初期化をやっていなかったためうまくいかなかったみたいですね。
度重なる質問に回答をくださってありがとうございました。
No.5
- 回答日時:
getValue()/putValue()は非推奨メソッドになりました。
今のJ2EEでは通りません。参考URL:http://java.sun.com/j2ee/sdk_1.3/techdocs/api/ja …
No.4
- 回答日時:
すみません。
。。適当なもので。。。<% pa[count] = ((java.lang.Integer)(session.getAttribute("Value"))).intValue(); %>
これでどうでしょう?
括弧が少なすぎました。。。
試してみて頂けますか?
この回答への補足
試してみたところ
Apache Tomcat/4.0.3 - HTTP Status 500 - Internal Server Error
type Exception report
message Internal Server Error
description The server encountered an internal error (Internal Server Error) that prevented it from fulfilling this request.
exception
java.lang.NullPointerException
内部サーバーエラーなるものがでてきました。
これはどういったエラーなのでしょうか。
プログラムの組み方によってよくでてくるのですが。
No.3
- 回答日時:
1行でするなら、
<% pa[count] = (java.lang.Integer)(session.getAttribute("Value")).intValue(); %>
かな。
putValue() じゃ駄目ですか。。。
以前、私も同じ事をした様な気がするんですけど。。。
この回答への補足
修正したら
この型は = には不適合です。
java.lang.Integer から int には変換できません。
pa[count] = (java.lang.Integer)(session.getAttribute("Value")).intValue();
メソッド intValue() は class java.lang.Object で見つかりません。
pa[count] = (java.lang.Integer)(session.getAttribute("Value")).intValue();
のサーバーエラーがでてきました。
なかなか難しいです。
No.1
- 回答日時:
第2引数がObjectということは、参照型の引数を取るということなので、
intをInteger型に変換したら良いと思うのですが、不都合ですか?
この回答への補足
session.setAttribute("Value", new Integer(value));
に変更したらコンパイルは通りました。
その後JSPでその値をint型の配列に格納していきたいのですが
<%! int pa[]; %>
<%! int count = 0; %>
<%= session.getAttribute("Name") %>
<% pa[count] = session.getAttribute("Value"); %>
<%= pa[count] %>
<% ++count; %>
のgetAttributeのところでサーバーエラー
この型は = には不適合です。java.lang.Object から int には変換できません。
がでます。
Objectからintに変換する方法があったら教えてください。
お願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- PHP php 入力画面から確認表示画面へ情報の受け渡しについて。 1 2023/06/07 18:00
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Ruby vscode 文字化け 1 2022/05/21 19:17
- PHP $_SESSIONについて教えて下さい。 2 2023/03/02 09:18
- JavaScript 電車の運賃を出すプログラムを作っています。 2 2022/06/22 09:36
このQ&Aを見た人はこんなQ&Aも見ています
-
「どうして捨てられないの?」前妻の物を捨てられない男性の心理って?
前妻の物を捨てられない理由に加え、捨てるための手段はあるのかを専門家に聞いてみた!
-
配列をセッションに割り当てた後で
Java
-
JSPからJSPへ情報を渡せる?
Java
-
レコード件数の表示
Java
-
-
4
count(*)で取得した値をJAVAの変数に代入するには?
Java
-
5
setAttribute(String, int)は適用できない
Java
-
6
JDBCを使ってdate型へのINSERTはできますか?
Java
-
7
JSPで意味不明のコンパイルエラー
Java
-
8
jsp~jspにhiddenを使って変数を飛ばしたい
JavaScript
-
9
javascriptでセッションを取得
JavaScript
-
10
Javascriptの値をJava(JSP)へ渡す方法
Java
-
11
リクエストに応じたselectedの初期値設定方法
Java
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
この警告はどうすれば?
-
ページング
-
Javaで文字と数字が混ざったも...
-
javamailで複数人にメールを送...
-
csvファイルを2次元配列に格納
-
【C#】ハッシュテーブル(連想...
-
C#で動的配列Listの中身をListB...
-
『args[]』とは?
-
【Ajax通信&Java】配列の受け取...
-
strutsでArrayListの中の配列の...
-
Javaで文字を漢字であるか否か...
-
配列を使ってカレンダーを表示...
-
n番目に大きな値を探索する
-
javaでの文字列からの数字抽出
-
乱数を発生させて、それを配列...
-
javaで大容量テキストファイル...
-
同じ配列またはクラスを、2回...
-
配列について
-
MAPの配列・・・???!!!
-
九九の表の応用
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ページング
-
java
-
配列をセッションに割り当てた後で
-
この警告はどうすれば?
-
Javaで文字と数字が混ざったも...
-
javaで大容量テキストファイル...
-
セッションを使ったint型の値の...
-
C言語でunsigned char配列を連...
-
配列の中に複数存在する数がい...
-
Javaで文字を漢字であるか否か...
-
[Ljava.lang.Stringってなんですか
-
ArrayListからBean配列に値をセ...
-
C#で動的配列Listの中身をListB...
-
【C#】ハッシュテーブル(連想...
-
csvファイルを2次元配列に格納
-
配列で、値の入っている要素数...
-
『args[]』とは?
-
【Ajax通信&Java】配列の受け取...
-
n番目に大きな値を探索する
-
データベースから取得したデー...
おすすめ情報