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

        jfut jfut created issue -
        kanagashi kanagashi made changes -
        Field Original Value New Value
        Assignee Satoshi Kimura [ kimura ] Katsuhiko Nagashima [ kanagashi ]
        kanagashi kanagashi made changes -
        Status Open [ 1 ] In Progress [ 3 ]
        Repository Revision Date User Message
        s2struts repository #880 Fri Apr 13 08:53:05 JST 2007 kanagashi [STRUTS-45]クラス名中の大文字で始まるところもすべて"/"に変換するSplitUpperActionPathNamingRuleクラスを作成
        ActionPathNamingクラスの意味を明確にするためにQualifiedActionPathNamingRuleクラスをSubApplicationActionPathNamingRuleに変更
        Files Changed
        DEL /trunk/s2struts/src/test/resources/org/seasar/struts/lessconfig/config/rule/impl/QualifiedActionPathNamingRuleTest.dicon
        ADD /trunk/s2struts/src/main/java/org/seasar/struts/lessconfig/config/rule/impl/SplitUpperActionPathNamingRule.java
        DEL /trunk/s2struts/src/test/java/org/seasar/struts/lessconfig/config/rule/impl/QualifiedActionPathNamingRuleTest.java
        ADD /trunk/s2struts/src/test/resources/org/seasar/struts/lessconfig/config/rule/impl/SplitUpperActionPathNamingRuleTest.dicon
        ADD /trunk/s2struts/src/test/java/org/seasar/struts/lessconfig/config/rule/impl/SplitUpperActionPathNamingRuleTest.java
        ADD /trunk/s2struts/src/main/java/org/seasar/struts/lessconfig/config/rule/impl/SubApplicationActionPathNamingRule.java (from /trunk/s2struts/src/main/java/org/seasar/struts/lessconfig/config/rule/impl/QualifiedActionPathNamingRule.java)
        ADD /trunk/s2struts/src/test/resources/org/seasar/struts/lessconfig/config/rule/impl/SubApplicationActionPathNamingRuleTest.dicon (from /trunk/s2struts/src/test/resources/org/seasar/struts/lessconfig/config/rule/impl/QualifiedActionPathNamingRuleTest.dicon)
        DEL /trunk/s2struts/src/main/java/org/seasar/struts/lessconfig/config/rule/impl/QualifiedActionPathNamingRule.java
        ADD /trunk/s2struts/src/test/java/org/seasar/struts/lessconfig/config/rule/impl/SubApplicationActionPathNamingRuleTest.java (from /trunk/s2struts/src/test/java/org/seasar/struts/lessconfig/config/rule/impl/QualifiedActionPathNamingRuleTest.java)
        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クラスのより良い名称があれば、コメントください。
        kanagashi kanagashi made changes -
        Status In Progress [ 3 ] Resolved [ 5 ]
        Fix Version/s 1.3.0-beta-4 [ 10365 ]
        Resolution Fixed [ 1 ]
        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