[STRUTS-45] QualifiedActionPathNamingRule使用時にクラス名中の大文字で始まるところもすべて"/"に変換して欲しい Created: 2007-03-25  Updated: 2007-04-14  Resolved: 2007-04-13

Status: Resolved
Project: S2Struts
Component/s: S2Struts
Affects Version/s: 1.3.0-beta-3
Fix Version/s: 1.3.0-RC1

Type: Improvement Priority: Major
Reporter: jfut Assignee: kanagashi
Resolution: Fixed Votes: 0
Labels: None


 Description   

QualifiedActionPathNamingRule使用時にクラス名中の大文字で始まるところもすべて"/"に変換して、パスとして使えるようには出来ないでしょうか?

  • rootPackageName: org.seasar.struts.lessconfig.config.rule.impl
    • org.seasar.struts.lessconfig.config.rule.impl.action.PackageRuleComponentAction -> /package/rule/component
    • org.seasar.struts.lessconfig.config.rule.impl.action.sub.HogeEdit -> /sub/hoge/edit

S2Struts 1.3.0-beta-3以降のQualifiedActionPathNamingRuleと違いすぎてあまり参考にならないかもしれませんが、http://integ.jp/java/s2-struts-qualified/ の s2struts-qualified-1.3.0-beta-3 (splitUpperName: true時) というもので現在無理やりこの機能を実現しています。使える部分があれば使って貰えたら幸いです。

よろしくお願いします。



 Comments   
Comment by jfut [ 2007-04-14 ]

対応ありがとうございます。SplitUpperActionPathNamingRule、期待どおり動作しました。
名称も今のままで問題ないと思います。

Comment by kanagashi [ 2007-04-13 ]

提示していただいたソースをもとに
クラス名中の大文字で始まるところもすべて"/"に変換するSplitUpperActionPathNamingRuleクラスを作成しました。
また、今回の追加に伴い、ActionPathNamingRuleを整理しました。

  • DefaultActionPathNamingRule
    コンポーネント名からActionを除いた名称をPathとして利用する
    例) aaa_HogeBarAction → /aaa_HogeBar
  • SubApplicationActionPathNamingRule
    ※beta-3時点のQualifiedActionPathNamingRuleクラスからクラス名を変更
    コンポーネント名からActionを除いた名称から
    さらにSubApplicationのパスを"/"に変換した名称をPathとして利用する
    例) aaa_HogeBarAction → /aaa/hogeBar
  • SplitUpperActionPathNamingRule
    コンポーネント名からActionを除いた名称から
    さらにSubApplicationのパスを"/"に変換し、
    コンポーネント名中の大文字で始まるところもすべて"/"に変換した名称をPathとして利用する
    例) aaa_HogeBarAction → /aaa/hoge/bar

それぞれのActionPathNamingRuleクラスのより良い名称があれば、コメントください。

Generated at Thu Apr 25 10:58:44 JST 2024 using Jira 9.15.0#9150000-sha1:9ead8528714127d8cfabf2446010d7e62c0a195c.