[Seasar-user:16776] Re: SAStruts の実行メソッドをServletFilterで受け取る方法

Yasuo Higa [E-MAIL ADDRESS DELETED]
2009年 1月 28日 (水) 12:48:03 JST


ひがです。
>  
> sastruts+mayaaにて色々な機能を検証している最中です。
>  
> sastruts:sa-struts-1.0.4-sp2
> mayaa:mayaa-1.1.23
>  
> ・行いたいこと
> ServletFilterにてログインしているか確認を行いかつ、
> Actionの実行メソッド単位にて実行権限確認を行いたい。
>  
> ・現在の調査状況
> ログインチェックは、以前教えていただいたSession情報を
> 確認し状況を確認することはできたのですが、実行メソッド名の取得が
> 行えない状況です。
>  
S2ExecuteConfig.getExecuteConfig()で
実行メソッドを取得することができます。
ただし、上記のメソッドは、RequestProcessorの
processPopulate()の中で設定されるので、
Filterなどでは取得できません。

やるなら、Interceptorで行うのがいいと思います。

@Executeのrolls属性で実行メソッドごとに権限チェックができるので、
普通は、rolles属性を使うのが楽でいいと思います。

もっといえば、ログインチェックや実行メソッドごとの権限チェックは、
ServletContainerで用意されている標準のほうを使ったほうが楽ですよ。
sa-struts-tutorialにもそのサンプル(保護されたページ)があります。


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