[Seasar-user:19346] Re: 【SAStruts】urlPatternで複数パラメータを受け取りたい

Yasuo Higa [E-MAIL ADDRESS DELETED]
2010年 2月 18日 (木) 12:03:57 JST


ひがです。

> いつも大変お世話になっております。
> iceと申します。
> 
> Executeメソッドに対してのurlPattern指定で
> 複数のパラメータを取得したいと考えております。
> 
> アノテーション部分は以下のようなイメージなのですが、
> 
> @Execute(
>  validator = false,
>  urlPattern = "search/p1_{param1}/p2_{param2}/")
> 
> 1).パラメータが全て指定された場合
> http://localhost:8080/sample/search/p1_100/p2_200/
> 期待通り、param1およびparam2の変数で受け取ることが可能です。
> 
> 2).パラメータが全て指定されない場合
> http://localhost:8080/sample/search/p1_/p2_200/
> 意図としてはparam2のみに値を設定することなのですが、
> param1に格納すべき値を指定せずにリクエストすると、404となり表示されるのは下記の通りです。
> 
> 説明 The requested resource (/sample/search/p1_/p2_200) is not available.
> 
> 期待の挙動を実現するために、RoutingFilterを独自実装したものに差し替えようかと考えておりますが、
> 転ばぬ先の杖ということで、RoutingFilterが、2).の例を許容しないことに
> 何か理由がございましたらご教授いただけますようお願い致します。
> (まだRoutingFilterのソースを追っていない段階で恐縮です)

/{param1}/{param2}/
のような設定ならはじいているつもりですが、

/p1_{param1}/p2_{param2}/
は特にはじいている意識はありません。
正規表現に一致していないのかもしれないですね。


Seasar-user メーリングリストの案内