
こんにちは。
少し文が長いですがよろしくお願いします。
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も見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
n番目に大きな値を探索する
-
Javaで文字と数字が混ざったも...
-
[Ljava.lang.Stringってなんですか
-
strutsで2次元配列をやりとりす...
-
forループの評価(条件)式につ...
-
配列について
-
javaについて
-
九九の表の応用
-
配列で、値の入っている要素数...
-
ArrayListを使った多次元配列の...
-
java 乱数を並べて重複させない...
-
フローチャート
-
C#で動的配列Listの中身をListB...
-
2次元配列のコピー
-
配列の最大要素数
-
ページング
-
JavaBeansの配列の値取得方法に...
-
ArrayListからBean配列に値をセ...
-
同じ配列またはクラスを、2回...
-
配列を使ってカレンダーを表示...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Javaで文字と数字が混ざったも...
-
フローチャート
-
この警告はどうすれば?
-
[Ljava.lang.Stringってなんですか
-
配列で、値の入っている要素数...
-
C#で動的配列Listの中身をListB...
-
配列の中に複数存在する数がい...
-
セッションを使ったint型の値の...
-
【C#】ハッシュテーブル(連想...
-
javaについて
-
javaでの文字列からの数字抽出
-
配列について
-
javaで大容量テキストファイル...
-
配列数を超えてアクセスしたと...
-
【Ajax通信&Java】配列の受け取...
-
『args[]』とは?
-
ArrayListからBean配列に値をセ...
-
C言語でunsigned char配列を連...
-
strutsで2次元配列をやりとりす...
-
javamailで複数人にメールを送...
おすすめ情報