- - PR -
ダイナアクションフォームについて
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2007-09-26 17:07
struts 1.2で開発しています
A画面(検索画面)→B画面(一覧画面)→C画面(一覧から選んだ画面) それぞれが違うフォーム名を使っている場合、 C画面でA画面のフォームの検索条件を表示したい場合 A画面の情報をセッションに保存しておく以外方法はないのでしょうか (hiddenは避けたいと思っています) Scope="session"にしているので、フォームの値は残っているようなのですが ご教授ください よろしくお願いします |
|
投稿日時: 2007-09-26 18:13
A画面のForm名でSessionにActionFormが格納されています。
|
|
投稿日時: 2007-09-26 19:37
anthyhimeさん
ご返答有難うございます すいません request.getSession()で取れると言うことでしょうか 今は、別にsetAttributeで一意の名前のセッションを作って、それを使いまわしているのでデフォルトのセッション情報は使っていません よろしくご教授ください |
|
投稿日時: 2007-09-26 21:14
<form-bean name="hogeForm" type="hoge.piyo.HogeForm">
で定義したフォームを利用するアクションが <action path="/piyo" name="hogeForm" scope="session"> とかだったりすると、 HogeForm form = (HogeForm)session.getAttribute("hogeForm"); で取得できますよって話。 |
|
投稿日時: 2007-09-26 22:13
たびたびすいません
ダイナアクションフォームでかつ画面をまたいで別のフォーム名の 場合でも、大丈夫なのでしょうか //フォームを取得 objFrm = (DynaBean)form; 今の画面のこの取り方した出来ないのですが。 別の画面のフォーム名 form = (別の画面のフォーム名)session.getAttribute("別の画面のフォーム名"); このやり方だとエラーになってしまいます よろしくご教授ください |
|
投稿日時: 2007-09-27 00:57
エラーとだけ言われても、こっちには何が起こっているのかわかりません。
その辺を詳しく書いてもらえないと困りますよ。 DynaActionForm form1 = (DynaActionForm) session.getAttribute("hogeForm"); 見たいに書いてもダメってことですか? 別の画面のフォーム名 form = (別の画面のフォーム名)session.getAttribute("別の画面のフォーム名"); じゃなくて、 別の画面のフォームのクラス名 form = (別の画面のフォームのクラス名)session.getAttribute("別の画面のフォーム名"); です。 [ メッセージ編集済み 編集者: かつのり 編集日時 2007-09-27 00:58 ] |
|
投稿日時: 2007-09-27 10:38
かつのりさん
ご教授ありがとうございました 別フォームの情報をとる事が出来ました |
1