org.seasar.cubby.action
注釈型 Path


@Retention(value=RUNTIME)
@Target(value={METHOD,TYPE})
public @interface Path

アクションメソッドのパス。

アクションメソッドを起動するためのパスを指定するアノテーションです。

使用例

 @Path("fuga")
 public class HogeAction {
        // -> "/fuga/index"
        public ActionResult index() {
        }
 
        // -> "/fuga/m1"
        public ActionResult m1() {
        }
 
        @Path("list")
        // -> "/fuga/list"
        public ActionResult m2() {
        }
 
        @Path("/xxx/yyy")
        // -> "/xxx/yyy"
        public ActionResult m3() {
        }
 
        @Path("/{id}/edit")
        // {id}部分を要求パラメータに追加。
  // {id}部分の正規表現は省略されているためデフォルトの「[0-9a-zA-Z]+」。
  // priority(優先度)はデフォルト値の「Integer.MAX_VALUE」。
        public ActionResult m4() {
        }
 
        @Path("/{userId,[a-z]+}/edit", priprity=0)
        // {userId}部分を要求パラメータに追加。
  // {userId}部分の正規表現は「[a-z]+」のため小文字アルファベットのみ。
  // priority(優先度)は「0」のため、m4メソッドよりも先に適用される。
        public ActionResult m5() {
        }
 }
 
 @Path("/")
 public class RootAction {
        // -> "/"
        public ActionResult index() {
        }
 
        // -> "/m1"
        public ActionResult m1() {
        }
 
        @Path("list")
        // -> "/list"
        public ActionResult m2() {
        }
 
        @Path("/xxx/yyy")
        // -> "/xxx/yyy"
        public ActionResult m3() {
        }
 }
 

作成者:
agata, baba

任意要素の概要
 int priority
          アクションメソッドのバインディング時の優先度を設定します。
 String value
          アクションメソッドのバインディング用パスを指定します。
 

value

public abstract String value
アクションメソッドのバインディング用パスを指定します。

URLはアクションクラスのパス+アクションメソッドのパスで決定されます。 ただし、先頭が『/』の場合コンテキストルートからの絶対パスとして解釈されます。

{パラメータ名,正規表現}でプレースホルダーの指定ができます。

正規表現にマッチした場合、マッチした箇所が指定されたパラメータ名に追加され、アクションメソッドが実行されます。 正規表現は省略可能です。省略した場合「[a-zA-Z0-9]+」と同じ意味になります。

アクションメソッドのパスは「パスの正規表現+要求メソッド」で一意に特定できなければいけません。 実行時に重複が発見されると例外が発生します。

戻り値:
アクションメソッドのバインディング用パス
関連項目:
Accept
デフォルト:
""

priority

public abstract int priority
アクションメソッドのバインディング時の優先度を設定します。

この値が小さいほど、優先度が高く先に適用されます。デフォルト値はInteger.MAX_VALUEです。

手動でバインディングの設定が追加された場合、優先度は0から順番に振られます。手動追加よりも自動設定の優先度を上げたい場合は、 負の値を設定してください。

戻り値:
アクションメソッドのバインディング時の優先度
デフォルト:
2147483647


Copyright © 2006-2010 The Seasar Foundation. All Rights Reserved.