にキャストすることはできません。
@Autowired
@Qualifier("customerProviderExec")
private DefaultCustomerProvider customerProvider;
そして、私のコンテキストコンフィギュレーションXMLで
<bean id="customerProviderExec" class="my.package.DefaultCustomerProviderExecutor">
<property name="defaultCustomerProviderService" ref="customerProviderImpl" />
</bean>
<bean id="testCustomerProviderImpl" class="my.package.DefaultCustomerProviderTest">
<property name="customerProviderImpl" ref="customerProviderImpl" />
</bean>
<bean id="customerProviderImpl" class="my.package.DefaultCustomerProviderImpl">
...
</bean>
重要:クラスDefaultCustomerProviderImplはDefaultCustomerProviderを実装します
Javaクラスで実行しようとすると、
DefaultCustomerProviderExecutor executor = (DefaultCustomerProviderExecutor)this.getCustomerProvider();
return (DefaultCustomerProviderImpl) executor.getDefaultCustomerProviderService();
私はエラーを取得する:java.lang.ClassCastExceptionが:によって引き起こさ
$ Proxy17はmy.package.DefaultCustomerProviderImpl
にキャストすることができない誰かがこのthrougされましたか?
おそらくAOPを使用してクロスカッティングの問題を実行しています。ここで受け入れられた答えを確認してください:http://stackoverflow.com/questions/3852564/abstract-dao-pattern-and-springs-proxy-cannot-be-cast-to-problem –
ありがとう!それは私を助けた=) – user1143609