Strutsのvalidate()でListの値がなくなる

このQ&Aのポイント
  • Strutsを使用して開発している際、一覧表示されたデータを更新する際にListの値がなくなる問題が発生しています。
  • 具体的には、ラジオボタンで選択されたデータの年齢を見て、50才以上なら更新せずにエラーにしたいのですが、validate()メソッド内でListの値がnullになってしまいます。
  • この問題を解決するために、Listの値を取得する方法を知りたいです。
回答を見る
  • ベストアンサー

Strutsのvalidate()でListの値がなくなる

Strutsを使用して開発をしています。 一覧表示されたデータを選択し、その選択されたデータを更新するという システムを作っています。 [詳細] 一覧にはラジオボタンと名前と年齢が表示されています。 ラジオボタンで選択されたデータの年齢を見て 50才以上なら更新せず、validate()でエラーにしたいのです。 JSPではList(ラジオボタンと名前と年齢が入っている)を <logic:iterate >タグでぐるぐる回しています。 更新ボタン押下時、validate()メソッド内で listを取得して判断しようとしたのですがnullになってしまいます。 このListの値を取得する方法はありませんでしょうか? よろしくお願いいたします。

  • Java
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

strutsはしばらく触ってないのであんまり自信ないですが。 JSPファイルのコードで <logic:itarate> <bean:write name="hoge" property="hage"/> <html:hidden name="hoge" property="hage"/> </logic:itarate> こんな感じで書いて、ActionFormで private String[] hage; を定義してやればいけたような気がします。

relax7777
質問者

お礼

教えていただいた方法で出来ました。 ありがとうございました!

関連するQ&A

  • logic:iterate でのcheckboxの値取得

    struts1.3にてDBから2レコード値を取得するとします。 取得の方法はActionクラスでsetAttributeして jsp側ではlogic:iterateで取得しています そこにcheakboxを置きたいと考えています □ 1 名前 年齢 性別 □ 2 名前 年齢 性別 「詳細ボタン」 まず、チェックボックスにチェックされた事をどう判定するのか? 次に、チェックを付けて「詳細ボタン」を押下した後、チェックボックスとDBから取得した値の詳細をどう関連付けるかが分かりません。 教えて下さい。。。

    • ベストアンサー
    • Java
  • strutsでlist型の入力を行うには

    strutsでlist型の入力を行いたいのですが、サーバー側で上手く取得できません。 実際には struts-configに <form-bean name="TestForm" type="base.BaseActionForm"> <form-property name="testList" type="java.util.List" /> </form-bean> JSPには <logic:iterate id="testList" type="bean.TestBean" name="TestForm" property="testList" indexId="idx"> <tr> <td> <html:text property="strKamoku" name="testList"/> </td> </tr> </logic:iterate> beanは下記のようです。 public class TestBean implements Serializable, Cloneable { private String strKamoku; public String getStrKamoku() { return strKamoku; } public void setStrKamoku(String strKamoku) { this.strKamoku = strKamoku; } } 上記のように設定し、サーバー上でセットした値をテキストボックスに 入れてlist表示できたのですが、テキストボックスに入れた値を変更し、submitし、サーバー上でlistの中を見てみると、表示した時のままで変更した値が反映されてません。 表示したlistの値を変更する事はできるのでしょうか。 わかりづらい説明ですいませんが、なにかアドバイス宜しくお願いします。

    • ベストアンサー
    • Java
  • Strutsで画面開設時に・・・

    Strutsで画面を開設時に ボタン等を押下することなく 結果一覧を表示させる方法はありますでしょうか?? 前の画面から遷移するためのボタンを押下した時ではなく、 画面が開いた時に、結果一覧を表示させる操作がしたいのです。 struts-config.xmlをどうにかいじって Action.classのexecute()を ボタン等の操作なくJSPファイルに読み込む方法ないですかね・・・・。

    • ベストアンサー
    • Java
  • Strutsで画面に表示した値の再取得って可能?

    お世話になっています。 mike219と申します。 現在strutsを使用してWebシステムを開発しております。 開発している最中にちょっと気になることがあったので質問させていただきました。 気になったのは以下のような感じの機能を作成する際の動作です。 (1)DBから取得したデータを一覧で表示します。 (2)一覧に表示したデータのフィルタを行い再表示を行う、といったものです。 ※フィルタの対象はDBからではなく、画面に表示した値です。 というような機能です。 (1)に関してはまったく無問題なのですが、 (2)の「一覧に表示したデータのフィルタを行い」はどういった感じで作成すれば いいのか分かりません・・・ (javascriptでなにかJsonとかデータを加工してしないといけないのかな?) いい方法をご存知であれば教えていただけると助かります。 ちなみに環境は↓です。 Java:1.6 Struts:1.3 Strutsに関しては経験が浅いです >< よろしくお願い致します。

    • ベストアンサー
    • Java
  • StrutsでのButton表示

    Strutsを使っていて、思い通りに表示できない部分があります。 ボタンを沢山表示させたいのですが、表示させるボタンの名前はXMLに記述されています。 iterateタグにて下記のコードを出力させます。↓ <html:button property="send" value ="" /> valueの部分に値を入れるとボタン名になると思います。 ボタン名にしたい値は下記の中で取得できています。↓ <bean:write name="api" property="button" /> ↑の値をなんとかしてvalueの中に代入してあげたいのですが、いろいろ試したもののうまくいきません。 おわかりになる方いらっしゃいましたらお願いします。

    • ベストアンサー
    • Java
  • 値を一つずつ取得

    以下のような連続したデータがシート「問題1」のA1セル以下に記述されています。 レモン いちご バナナ スイカ                     メロン レモン これらのデータをボタン押下時にコンボボックスに表示できるようにしたいのです。 同様にボタン押下時コンボボックスに表示されたデータをリストボックスにも表示できるようにしたいのです。 ※これらのデータの内容、個数がともに変更されても表示できるようにすること。 データは連続してセルに置かれているため、データの終端は""(何もない文字列)で判断してかまわない。 また、コンボボックスはデータを1つ選択した場合、 リストボックスはデータを1つ選択してダブルクリックされた場合、選択されたものがセルに表示されるようにもしたいのです。 一番わからない点はセルの範囲を決めず一つずつ値を取得し文字が入っていないとわかるまで、一つずつ取得の仕方がどうしても解りません。。。お願いします。

  • サブウインドウを閉じて親ウインドウにデータを渡したい

    あるWeb画面よりサブウインドウを開いてデータを選択、選択したら閉じて親ウインドウにデータを渡したいと思っております。 サブウインドウを閉じた時の親ウインドウへのデータの引継ぎ方法がよくわかりません。 ●前提 ・親ウインドウに選択ボタンがついている。 ・選択ボタン押下したらキーを渡し、サブウインドウを起動しキーを渡す。     ・window.open()でActionクラスを呼ぶ。     ・ActionクラスがForm,State,DAO等よりデータを取得。     ・"sucsess"にてサブウインドウを開く。→Struts使ってます。 ・サブウインドウにはDBより検索された一覧が表示されている。     ・選択できるようにラジオボタンも付いている。     ・決定ボタンがついている。     (作業中) ・親ウインドウに選択されたデータが表示されている。 この作業中のところでご質問です。 決定ボタンを押下したあと、データの引継ぎ方法がよくわかりません。 今はとりあえずwindow.close()で閉じるだけにしております。 稚拙な説明ですみません。 よろしくお願いします。

    • ベストアンサー
    • Java
  • ACCESS リストボックスに検索結果を表示したときに

    ACCESSのフォームで、 検索条件を入れて、【検索】ボタンを押下すると、 リストボックスにヒットした一覧を表示するというものを作っています。 そのとき、【検索】ボタンを押下した後、リストボックスの一番上にフォーカスがあたっているように(黒く選択されているように)することは可能でしょうか。 それはどのようにすればよいでしょうか。 よろしくお願いします

  • リストボックスについて

    自画面のボタンを押下時、他画面のリスト情報が取得可能か教えてください。 例) 画面が画面A,画面Bと二つあります。 ※同時に開いております。 画面Aにはリストがあり、画面Bで「選択」ボタンを押下時、 画面Aのリスト情報を取得することは可能でしょうか。  ※取得したリスト情報は画面Bのリストボックスに表示 可能でしたらどのように取得するのでしょうか。 わかりやすくするために図も用意いたしましたので 添付資料を参照ください。 簡単な質問になってしまい申し訳ございません。 どなたかご回答お願い致します。

  • struts2Listのバインド方法がわからない

    今struts2の勉強をしているのですが、 下記のような画面機能を作ろうとしています。 【仕様】 (1):商品チェック画面(jsp)という画面に、iteratorで『商品List<商品Bean>』を表示する ((1)は問題ない) (2):(1)の表示情報を基に、問題ないとした商品を、問題なしとしてDB更新をするボタンの機能 【問題点】 で、(2)で問題があります。 (1)の『商品List<商品Bean>』が取得できないのです。 図にて(雑ですみません↓)、具体的に再度説明します。 --------------- 商品チェック画面    ←商品チェック画面(jsp)に、iteratorで『商品List<商品Bean>』を表示する --------------- □ 商品A ■ 商品B        ←■は問題ないとチェックした風です。 □ 商品C         更新    ←更新ボタン(update.action) --------------- ★問題点を詳細に再度説明します。 update.actionにて、『商品List<商品Bean>』が取得できません。 ちなみに、scopedModelDrivenを利用しています。 class GoodsCheckInfo ←model private 商品List<商品Bean> goodsList; private String test; ・・・ ちなみに、scopedModelDrivenは機能しています。 理由は、GoodsCheckInfoの『test』という別の項目では update.actionにて、商品チェック画面からデータをバインド(取得)できているからです。 要するに、『商品List<商品Bean>』にバインドできていないのです。 ただし、上記の図の表示ならば3つの『商品Bean』が『商品List』に格納されていると思います。 で、update.actionにて、model(※商品List<商品Bean>)を見ると、3つ分オブジェクトはできているのです。 ただし、『商品Bean』の中身は空っぽなのです。。。 質問です。 『商品List<商品Bean>』のような情報をactionにてバインドできた方いますか? まずはできるのかというところから知りたいです。 どうかご教示宜しくお願いします。

専門家に質問してみよう