谷本 心 in せろ部屋

はてなダイアリーから引っ越してきました

Struts

MapのvalueはStringで安定。これ豆知識な。

https://ml.seasar.org/archives/mayaa-user/2006-November/000318.html Strutsでシステム作るなら、MapのvalueはStringにしよう。 StrutsのCheckboxTagクラスでは、引数を文字列として取るから <html:checkbox name="aaa" property="bbbMap(${ccc})" />って書いて、cccにIntegerを渡すことができてたとしても これ</html:checkbox>…

なんか、logic:iterateのネストってうまくいかないよね。

Mapを要素に持つBeanをListにして、ActionFormに持たせてみた。 ActionForm -> List Bean -> Map こういう状態。 ここで、Mapを永続化させようと思って iterateタグで二重ループを作ったんだけど、うまく行かない。 <logic:iterate id="aaa" name="aaaForm" property="aaaList"> <html:hidden name="aaa" property="hoge" /> <logic:iterate id="map" name="aaa" property="bbbMap"> </logic:iterate></html:hidden></logic:iterate>

html:paramタグ

Struts1.3.6から追加になったタグらしい。 <html:link ...> <html:param name="aaa" value="bbb"/> <html:param name="ccc" value="ddd"/> </html:link> これでクエリ文字列に、aaa=bbb&ccc=dddが含まれる。 いまのところ、name属性とvalue属性しか定義できず、 <html:link>みたいな高機能さはないらしい(Mapも展開できない) まぁ、MayaaとかELを使っているなら paramNameと</html:link>…

クエリ文字列を生成時に、paramName/paramPropertyとnameは一緒に使える。

あう、初めて知ったのでメモ。 <html:link>タグにクエリ文字列を付与したい場合、 単一のプロパティなら、paramId、paramName、paramPropertyを指定して、 複数のプロパティなら、nameとpropertyでMapを指定する、 というのが教科書的なお約束。 で、これ排他利用かと思</html:link>…