- PR -

StrutsでFormの項目内容を動的に変化させる方法

1
投稿者投稿内容
うる
常連さん
会議室デビュー日: 2005/10/16
投稿数: 41
投稿日時: 2005-11-23 00:01
Strutsを学習中なのですが、
Formでの入力内容を動的に変化させる
(テキストフィールドの項目数やラジオボタンの項目数を動的に変化させたりする)
方法はどのようにすれば良いのでしょうか?

やりたい内容的には、DBの内容によって、
Formでの入力項目を動的に変えるようなものを作りたいと思っております。

参考書を読んでいると、
Strutsだと、Formの項目をあらかじめ、
決めておかないとダメそうな気がしております。
sui
会議室デビュー日: 2005/11/18
投稿数: 7
お住まい・勤務地: 大坂
投稿日時: 2005-11-23 00:39
こんばんわ。
UNISTYLEです。

うるさんのおっしゃるとおりで、
項目定義を動的に増減させることはできません。

class SampleForm extends ActionForm {
String item1;
}
↓↓↓
class SampleForm extends ActionForm {
String item1;
String item2;
}
のような挙動を動的に実現するわけですから。。。

ただ
class SampleForm extends ActionForm {
String[] item;
}
のように定義して、
例えばテキストフィールドの項目数やラジオボタンの項目数の動的な増減に対応することはできます。

うる
常連さん
会議室デビュー日: 2005/10/16
投稿数: 41
投稿日時: 2005-11-23 17:10
回答ありがとうございます。

Strutsでは無理そうなので、
サーブレットで受け取ろうと考えているのですが、
POSTで送られてくるキーが不定の場合、
どうやって取得すれば良いのか、
いい案が無いか考え中です。
Perlだったら簡単に出来たんですが、
Javaは難しいですね。
紅茶
会議室デビュー日: 2005/11/18
投稿数: 11
投稿日時: 2005-11-24 10:19
紅茶と申します。

POSTデータのキーを取得するだけなら簡単です。

HttpServletRequest#getAttributeNames()
わらお
会議室デビュー日: 2004/06/22
投稿数: 1
投稿日時: 2005-11-25 14:28
DynaActionFormはだめですか?

制約はありますが・・・
_________________
YB
会議室デビュー日: 2005/11/25
投稿数: 16
投稿日時: 2005-11-28 11:48
MapBackedなActionFormと言う手もあります。

ちょっとクセはありますが、struts-config.xmlの定義も逐次変更する必要はないですし、使い方によっては便利かも。
1

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