- PR -

Beanの値の取得

1
投稿者投稿内容
hirom
常連さん
会議室デビュー日: 2005/08/17
投稿数: 22
投稿日時: 2005-09-07 14:45
お世話になります。
JSP + サーブレット + Beanで学習中に行き詰まってしまいました。

手順:
@JSPで条件を入力
AサーブレットでDB接続+検索
B検索結果をBeanに格納
CJSPで検索結果表示

というものを行いたいと思っています。
ですが、
reqObject = (ConnectBean)request.getAttribute("reqObject");
if (reqObject == null) {
rs.beforeFirst();  *rs・・・検索されたものの結果セット
for(i=0; rs.next(); i++){
reqObject = new ConnectBean();
reqObject.setId(rs.getInt("ID"));
//out.println(rs.getInt("ID"));
reqObject.setName(rs.getString("NAME"));
reqObject.setBiko(rs.getString("BIKO"));
record[i] = reqObject;

}

request.setAttribute("reqObject", reqObject);

}
としているのですが、コンパイル時に
互換性のない型
検出値 : ***.ConnectBean
期待値 : int
record[i] = reqObject;
^
エラー 1 個
となってしまいます。
オブジェクトのキャストのしかたがいけないのだと思いいろいろ調べているのですが、解決することができません。
そもそもこのようなBeanの使い方がいけないのでしょうか?

初歩的な質問だとは百も承知ですが、どなたかアドバイスまたはご指摘などをいただけないでしょうか?
よろしくお願いいたします。
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2005-09-07 14:53
record変数の型はなんですか? エラーから推測するとint[]のように思いますが。
ConnectBeanクラスのインスタンスを参照するのだから、ConnectBeanクラスがサポートする
型でなければなりません。おそらくConnectBean[]で大丈夫でしょう。
hirom
常連さん
会議室デビュー日: 2005/08/17
投稿数: 22
投稿日時: 2005-09-07 15:00
uk様 さっそくのご回答ありがとうございます。

>record変数の型はなんですか?
 省略してしまっていて申し訳ありませんでした。

 int record[] = new int[10];

 としています。

>おそらくConnectBean[]で大丈夫でしょう。
 というのは
 record[i] = reqObject;
 を
 record[i] = ConnectBean[];
のようにしたらよろしいのでしょうか?

 実行してみたところ、
RequestServKensaku.java:96: '.class' がありません。
    record[i] = ConnectBean[];
^
RequestServKensaku.java:96: 予期しない型
期待値 : 値
検出値 : クラス
    record[i] = ConnectBean[];
^
エラー 2 個

のようにかえってきたのですが・・・
お手数をおかけいたしますが、ご教授のほどよろしくお願いいたします。

さる
ぬし
会議室デビュー日: 2005/07/14
投稿数: 276
お住まい・勤務地: 実家戻ったw
投稿日時: 2005-09-07 15:31
JSP + サーブレット + Beanの前にJavaの勉強をした方が良いですね。

int record[] = new int[10];

ConnectBean record[] = new ConnectBean[10];
にするのでは?

基礎からやらないといくらJSPやサーブレットをやってもまったく意味がありませんよ〜。
まずは基礎的な本やHPを見ましょう。
hirom
常連さん
会議室デビュー日: 2005/08/17
投稿数: 22
投稿日時: 2005-09-07 15:40
さる様 ご回答ありがとうございます。

>JSP + サーブレット + Beanの前にJavaの勉強をした方が良いですね。
全くそのとおりです・・・
時間がないので全てまとめて・・・などと考えていたのが間違いでした。

お手数をおかけして申し訳ありませんでした。
しかし、コンパイルもとおり、うまくいったようです!!
本当にありがとうございました。
今後ともよろしくお願いいたします。
1

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