Uploaded image for project: 'S2Struts'
  1. S2Struts
  2. STRUTS-45

QualifiedActionPathNamingRule使用時にクラス名中の大文字で始まるところもすべて"/"に変換して欲しい

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.3.0-beta-3
    • Fix Version/s: 1.3.0-RC1
    • Component/s: S2Struts
    • 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時) というもので現在無理やりこの機能を実現しています。使える部分があれば使って貰えたら幸いです。

      よろしくお願いします。

        Activity

        Hide
        kanagashi kanagashi added a comment -

        提示していただいたソースをもとに
        クラス名中の大文字で始まるところもすべて"/"に変換する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クラスのより良い名称があれば、コメントください。

        Show
        kanagashi kanagashi added a comment - 提示していただいたソースをもとに クラス名中の大文字で始まるところもすべて"/"に変換する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クラスのより良い名称があれば、コメントください。
        Hide
        jfut jfut added a comment -

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

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

          People

          • Assignee:
            kanagashi kanagashi
            Reporter:
            jfut jfut
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development