JSPからStruts2アクションのマッププロパティを設定したいとします。私が使用すべきデータ名の形式は何ですか?当初はMap < String、String>の作成に興味がありましたが、将来は、DomainClassに独自のプロパティがあるMap < String、DomainClassの作成に興味があります。JSPのStruts2マップエントリのフィールド名
0
A
答えて
3
次のように私はプロパティと、作用を有する -
private Map<String,String> assetProps;
...
public Map<String, String> getAssetProps() {
return assetProps;
}
public void setAssetProps(Map<String, String> assetProps) {
this.assetProps = assetProps;
}
マップ上の値を設定するには、2つのステップが基本的に存在します。まず、OGNLはマップをインスタンス化できません。したがって、あなた次第です。私の行動では、私が調製可能インターフェイスを実装しますが、以下のように「公共の文字列の入力()」メソッドを実行する前に、それをインスタンス化 -
public class EditAction extends ActionSupport implements Preparable {
...
public void prepare() {
// just satisfying Preparable interface so we can have prepareInput()
}
public void prepareInput() throws Exception {
assetProps = new HashMap<String,String>();
}
さて、オブジェクトがnullで、私はに似た構文を使用することができますJSPでの追従 -
<s:iterator value="asset.properties" var="prop">
<sjx:textfield name="%{'assetProps[\\'' +#prop.propName +'\\']'}"
value="%{#prop.propValue}"
label="%{#prop.propName}" size="25"/>
</s:iterator>
イテレータは、一連のオブジェクトをスタックから取り出して反復処理します。重要な部分は "name ="セクションで、二重にエスケープされた一重引用符に気付きます。こうすると、ページがレンダリングされるとき、入力要素の名前が(たとえば) - assetProps ['Screen Size']になります。ページが送信されると、 "public void execute()"メソッドの中で、assetPropsが完全に読み込まれます。
2
これは、誰かを助ける場合に備えて、同様のことをする別のコードスニペットです。
<s:iterator value="storageIds" var="sids">
<s:hidden name="%{'storageIds[\\'' + key +'\\']'}" value="%{#sids.value}"/>
</s:iterator>
私のアクションがありMap<String,String>
という名前
storageIds
Map.Entry
プロパティへの地図、キーと値の決意を反復します。
0
お試しください。
<s:iterator value="configMap" id="daa">
<s:hidden name="%{'configMap[\\'' + key +'\\']'}" value="%{#daa.value}" />
</s:iterator>
関連する問題
- 1. Struts2の/ JSP - リストのリストである
- 2. 複数のフィールドのGrailsマッピングソート::複数のマップエントリのGroovyソート
- 3. フィールド名としてognl式を使用したStruts2ワイルドカードアクションのマッピング
- 4. struts2とjspでArrayListを表示
- 5. Struts2インターセプター*後の* JSPのレンダリング - どのように?
- 6. 私はStruts2のアクションページからJSPページにカスタムオブジェクトのArrayListのののArrayListにアクセスするためにHAVA Struts2の
- 7. [Grailsの/ Groovyの]マップエントリの最小値
- 8. struts2を使った文字列jspページの表示値
- 9. JSP(Struts2)の動的属性にアクセスする方法
- 10. jspのstruts2プロパティタグを警告できますか?
- 11. struts2プロジェクトの.jsp URL拡張子を非表示にする
- 12. Struts2:アクションからの値 - DAO(データベース) - VO - ビュー(jsp)。提案する?
- 13. Struts2アクションのjsp/servlet暗黙オブジェクトにアクセスする方法は?
- 14. Struts2が別のJSPに成功結果をフォークする
- 15. JSP画面フィールドの監査証跡
- 16. Javaのフィールド名
- 17. JSP/Struts2/Hibernate:自己参照表をループします
- 18. は、私は私のjspで次のコードを持ってStruts2のタグ
- 19. JavaScript関数を使用してStruts2の別のjspページにリダイレクトする方法
- 20. Struts2/Springアプリケーションの最初のアクセス時にJSPでセッション変数が空になる
- 21. 印刷JSPの名前のリスト
- 22. 名前フィールドのmod_rewrite
- 23. マップエントリを整列する方法
- 24. struts2:オブジェクトを作成せずにjspでアクションクラスのゲッターにアクセスする
- 25. データベース内のフィールド名からのスパンクラス名
- 26. Struts2の名前空間の複雑な構成
- 27. 異なるstruts.xmlファイル内のStruts2の同じ名前空間
- 28. JSPで動的な入力フィールド
- 29. アクセスデータベーステーブルのフィールド名のダッシュ
- 30. Struts2の:私はフォームの送信のための私のJSPページ内Struts2のベースのアプリケーション で働いていますフォームアクション
これは私にも同様の状況を解決するのに役立ちました。あなたが実際にこれのための準備可能なインターフェイスを必要としない片側のメモは、あなたが宣言されたときにマップを初期化することができます。 – shakerlxxv