
いつもお世話になっております。echo2002です。
さて、今回は以下のような処理を行いたいのですが、可能なのでしょうか?
”servletで作成したオブジェクトの配列をjspにforwardして表示させる”
こんなような処理を考えています。
構成:FileListServletクラス, FileInfomationクラス, disp.jsp
FileInfomationクラスではファイル名やファイルサイズなどの情報を持ち、
それぞれgetなどのアクセサメソッドを持つとします。
FileListServletクラスでの処理
FileInfomationクラスの配列を作成し、各情報をsetする。
HttpServletRequestにsetAttributeでFileInfomation情報を付加し、
disp.jspへforwardする。
※以下の方法を考えています。
request.setAttribute("fileinfo1", fileinfo[0]);
request.setAttribute("fileinfo2", fileinfo[1]);
request.setAttribute("fileinfo3", fileinfo[2]);
・・・
(配列でsetAttributeできるのかわからなかったので、
とにかくファイルの数分setAttributeしてみました)
getServletContext().getRequestDispatcher("/disp.jsp").forward(req, res)
わからないこと:
disp.jspでどのようにFileInfomationの情報を取得し、
内容を参照できるのかがよくわからないのです。
jspの暗黙オブジェクトrequestを使用して、request.getParameterをすると、
返ってくる値がStringのようなので、FileInfomationクラスにならないんですよね?
突っ込みどころ満載の質問かと思いますが、何かアドバイス頂ければと思います。
オブジェクトの配列をsetAttributeしてjspで読み出せる方法があれば、
それもご教授いただけますでしょうか。
よろしくお願いいたします。jsp難しいです・・・。
No.3ベストアンサー
- 回答日時:
setなんちゃらメソッドで値を設定したら、getなんちゃらメソッドを呼べば良かったのです。
つまり、set/get以下が同名のメソッド同士をセットで使えば良いのです。今回の場合は、getAttributeメソッドですね。
戻り値はObjectですがこれはキャストすれば良いのです。
FileInfomation 変数 = (FileInfomation)request.getAttribute("fileinfo1");
てな具合です。
なお、getParameterメソッドは、クライアント(ブラウザ)から送信されたパラメータを取得するメソッドです。
さて、話を次の段階に進めて、配列を受け渡しできるか?となりますが、、できます。
サーブレット側で、
request.setAttribute("キー文字列", fileinfo);
として、JSP側で、
FileInfomation[] 変数 = (FileInfomation[])request.getAttribute("キー文字列");
とすれば、良いのです。
run34rickyさん回答ありがとうございます。
私が望んでいた形にほとんどぴったりなやり方のようです。まだ試してみていないのですが、これからやってみようと思います。できるとうかがっただけでかなりやる気が出てきました(^^;
ありがとうございました。

No.2
- 回答日時:
まず、fileinfoの配列ですが、配列ではなく
VecterやListなどの可変長配列にセットしていって
みてはいかがでしょう?
※例えばVecter
Vecter vecData = new Vecter();
:(Vecterオブジェクトにセット)
request.setAttribute("fileinfo1", vecData );
サーブレット側ではこうなります。
Jsp側ではVecterのオブジェクトを用意してあげて
キャストしてあげてください。
vecter = (Vecter)request.getAttribute("fileinfo1");
こんな感じ。どうでしょうか?
ishitoさん回答ありがとうございます。
Vecterというオブジェクトは知らなかったので、
これから調べてみようと思います。
ありがとうございました。
No.1
- 回答日時:
torakiyojpさん、回答ありがとうございます。
このページ、ここに質問させていただく前にも一応目を通していたのですが、オブジェクトが”配列”だった場合はどうなるのかがよくわからなかったんです。
教えていただいて、ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP クラス 1 2022/08/08 15:12
- JavaScript オブジェクト配列の各メンバを任意の式で評価して、その評価値が最大のオブジェクトを返す関数はありますか 2 2023/05/20 15:02
- Java 問題作成のWebアプリの作り方を教えてください 1 2022/11/26 22:01
- Java JavaのSingletonパターンのprivateの持つ意味が分かりません。 5 2022/06/12 10:38
- バックアップ ファイル履歴を使用してバックアップよりハードディスクドライブに保存した方良いですか? 3 2022/09/29 22:31
- PHP 配列の値の更新方法について 1 2022/08/05 09:49
- Java java 次の機能を有するメソッドを自クラスに作成し、実装したいです。 機能 名前判定機能 →名前が 3 2022/06/16 16:08
- JavaScript javaScriptで画面に値を入れるには 1 2022/08/14 12:27
- その他(プログラミング・Web制作) セレクトボックスで選択された値をコントローラーで使用したい 2 2022/07/26 16:41
- 中学校 娘のクラスの学級通信に個人情報が掲載されていて、非常に不快です。 7 2022/04/22 18:02
このQ&Aを見た人はこんなQ&Aも見ています
-
JSPの処理の途中で、JavaScriptの処理をしたい
JavaScript
-
JSPでリンクを利用してパラメータを次画面に渡す方法について。
Java
-
jspからServletを呼び、元のjspページに戻るにはどうしたらよいですか?
Java
-
-
4
getParameterについて
Java
-
5
JSPやサーブレットでSystem.out.println()などでコンソールに出力できますでしょうか?
Java
-
6
ServletからServletへの値渡し
Java
-
7
jsp~jspにhiddenを使って変数を飛ばしたい
JavaScript
-
8
getParameterで値が取得できず、困ってます
HTML・CSS
-
9
setAttribute getAttribute 配列内容受け渡し について
Java
-
10
JSPでの画像ファイル表示
Java
-
11
jspからjavascriptの変数引継ぎ
JavaScript
-
12
JSPからServletに、テーブルに格納された値を渡したい
Java
-
13
Java-jspの画面入力値保持について
Java
-
14
配列をセッションに割り当てた後で
Java
-
15
JavaBeansの配列の値取得方法について
Java
-
16
JSP内で外部jsファイルを指定する
Java
-
17
ループ処理の際、最後だけ,"をつけたくない"
Java
-
18
StringBufferからStringへキャストする
Java
-
19
フォーム上で押されたボタンによってサーブレットの処理を変えたい
Java
-
20
StrutsでJSPからListを受け取りたい
Java
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
InternetExplorer.Application...
-
html形式で保存
-
LiveConnectって?
-
.matchの使用方法
-
親クラスの型で子のオブジェク...
-
C#で親にイベントを投げる方法
-
Range(Cells(32, 14)).Value = ...
-
prototypeについて
-
staticではないメソッドadd(Co...
-
エクセル 同じ内容行削除マクロ 2
-
エクセルVBA 画像を貼り付ける...
-
MIME::Parserのparse_dataメソ...
-
Calendarクラスでエラーがでる
-
VBAでの[]
-
ArrayListはオブジェクトのポイ...
-
Replace メソッドってなんですか?
-
C#のusing文でメソッドの戻り値...
-
VBA FSOの詳細説明はどこ?
-
!マーク
-
今日は こどもの日 で、良い天...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBA 画像を貼り付ける...
-
Excel VBA 定数にオブジェクト...
-
サーブレットコンテキストの意...
-
C#のクラスで値渡しをする
-
VB.netでメソッドからコントロ...
-
servletからjspへオブジェクト...
-
エクセルVBA/SpecialCellsで特...
-
Vba ListViewの行挿入に関して...
-
C#で親にイベントを投げる方法
-
MessageBox.Show(Me,…の「Me」...
-
String型からlong型への変換は...
-
VB.NETでのnothing の意義について
-
UTF-8のテキストファイルを開く...
-
javaで、、、
-
System.Collections.SortedList
-
C#でのExcel操作について.(Ran...
-
VBSのGetFolderメソッドについ...
-
JSPでのArrayListの表示につい...
-
ピクチャーボックスに点を打つ...
-
VBAでの[]
おすすめ情報