Springインターセプタの使用に問題があります。私はいくつかの初期化を行うためにインターセプターでラップしようとしているCXFサービスエンドポイントメソッドを持っています。なんらかの理由で、インターセプタが呼び出されていません。あなたが見ることができるように、私は方法のカップルが検索しsearchJSONpありCXFエンドポイントクラスAcadConnectChannelResourceをしましたSpring Methodインターセプタの問題
<jaxrs:server id="acadConnectServer" address="/rest/acadconnect3">
<jaxrs:serviceBeans>
<ref bean="acadConnectResource" />
</jaxrs:serviceBeans>
</jaxrs:server>
<bean id="acadConnectResource"
class="com.test.connectchannel.service.AcadConnectChannelResource" />
<bean id="connectResource" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="target" ref="acadConnectResource" />
<property name="interceptorNames">
<list>
<value>methodPointCut</value>
</list>
</property>
</bean>
<bean id="methodPointCut"
class="org.springframework.aop.support.NameMatchMethodPointcutAdvisor">
<property name="advice">
<ref local="methodInterceptor" />
</property>
<property name="mappedNames">
<list>
<value>search</value>
<value>searchJSONP</value>
</list>
</property>
</bean>
<bean id="methodInterceptor"
class="com.test.connectchannel.util.ConnectChannelInterceptor">
</bean>
:ここに私の春のエントリーです。私はNamed Method Cutインターセプタを作成してこれらの2つのメソッド呼び出しをインターセプトし、カスタムインターセプタクラスを使用して初期化しました。しかし、メソッドが呼び出されるたびにインターセプタは呼び出されません。
私はここで何が欠けているかわからない、任意のポインタが評価されます。
-Thanks
うーん...すべてうまく見えます。 mappedNames要素の値に*を入れてみましたか? *がこのimplで動作しない場合は... RegexpMethodPointcutAdvisorを試してみてください。これは私の春のポイントカットがこれを使っているので、確かに... *私に教えてください。 P.Sまだ行われていない場合は、インターセプタにトレースを入れて*でどこかに入るかどうかを確認してください。 – Cygnusx1
@ Cygnusx1使用していませんでした – Shamik