[Seasar-user:3446] Re: AutoRegister の記述順

松山 大樹 [E-MAIL ADDRESS DELETED]
2006年 3月 29日 (水) 18:14:33 JST


 松山です。

 AutoRegister の記述順について、ちょっとわからない部分が
あるので、同じスレッドで質問させてください。

 S2Container のドキュメントの、「アスペクト自動登録」の説明には、
こう記述されています。

「コンポーネントの自動登録と組み合わせる場合は、コンポーネントの自動登録の設定よりも後に、
 アスペクトの自動登録の設定を記述する必要があります。アスペクトを適用されるコンポーネントは、
 アスペクトの自動登録の設定よりも後に記述する必要があります。」

 s2jsf-example の、app.dicon には、次のように設定されています。
-------------------------------------------------------------------------
<component class="org.seasar.framework.container.autoregister.FileSystemComponentAutoRegister" >
  <property name="instanceDef">@[E-MAIL ADDRESS DELETED]</property>
  <initMethod name="addClassPattern">
    <arg>"examples.jsf.action.impl"</arg>
    <arg>".*ActionImpl"</arg>
  </initMethod>
</component>
<component class="org.seasar.framework.container.autoregister.AspectAutoRegister" >
  <property name="interceptor">actionInterceptorChain</property>
  <initMethod name="addClassPattern">
    <arg>"examples.jsf.action.impl"</arg>
    <arg>".*ActionImpl"</arg>
  </initMethod>
</component>
-------------------------------------------------------------------------
コンポーネントの自動登録の設定があり、その次にアスペクトの自動登録の設定があります。
これだと、
 「アスペクトを適用されるコンポーネントは、
  アスペクトの自動登録の設定よりも後に記述する必要があります。」
という記述と異なっていると思うのですが、なぜ *ActionImpl に対して、actionInterceptorChain は
正常に適用されているのでしょう?

 すごく基本的なことなのかもしれませんが、ちょっと悩んでしまったので。



-- 
::: 株式会社ワウワウ・コミュニケーションズ http://www.wowcom.co.jp/
:::   ITシステム・インテグレートDiv.
:::  Web・マーケティング&コマンドセンターUnit.
:::   松山 大樹 - [E-MAIL ADDRESS DELETED]





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