10代と話して驚いたこと

ここ最近、JAVA STRUTSで開発をすることになり、詳細設計の通り画面を
実装しています。

ある程度、理解してきてはいるのですが、一点実装したのですが、思ったように
動かない部分があり困っています。

ActionFormの内容

private int testID ;
private String name ;
private List<testBean>testDataList;

testBeanの内容

private boolean hogeA;
private String hogeB;
private String hogeC;

画面(jsp)側はhtml:hidden Listの内容はiteratorを使用しています。
indexed=trueの設定も忘れていません。

初期画面表示時は上記のtestID,name,testDataListにDBからデータを設定しセッションに
渡して画面表示は正常にうまくいってます。

問題は画面からsubmitした時なのですが、testID,testNameはgetできているのですが
Listの内容がまったく渡ってこないので困っています。

ソースの持ち出しが出来ないのと、社内では外につなぐことができないので
ここまでの情報しか書けませんが、こうやればできるという方法があれば
教えていただければと思います。

補足ですが、
今回のシステムはrequestからgetparamaterを使用するのは禁止となっています。
一応、上記の方法で、リクエスト情報にはListの内容はxxx[index].hogeA・・・のように
すれば取得できているので、情報は渡ってきてそうなのですが。

A 回答 (2件)

DoubleHeadさんの仰る通りやりたい事の情報が若干不明瞭です。



ListにBeanを入れるという事は
複数項目を1セットとしたの可変長項目があるという事でしょうかね?

Jsp側からではリストで新しいオブジェクトをnewする事はできないので
Listのgetで存在しないindexが呼ばれた時に新しいオブジェクトを生成するクラスを
作ってあげる事が必要です。

参考URLを載せておきます。
見当違いだったらごめんなさい。

参考URL:http://civic.xrea.jp/2006/11/25/struts-using-lis …
    • good
    • 0

値が渡ってこないということは送り方に問題があると思われるので


どうやって送ろうとしてるのか
つまり、
<form>の中身を
もっと具体的にはListの部分をどう作ってるのか見てみないとわかりません。

困ってあせっているのはわかりますが
落ち着いて論理的に考えてください。

とりあえず、そのjspかhtmlかのformの中の該当する部分を
当たり障りのない程度に抜き出して示してみてはいかがでしょう。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報