1

cxf と cxf-client を一緒に使用すると問題が発生します。cxf は、サービスが見つからないことを示しています。cxf-client の構成にコメントすると、cxf はサービスを見つけます。

サーブレットの構成は標準構成です。EU TIN サービスから作成されたクライアントの構成。

2 つのプラグインは別々に機能しますが、一緒には機能しません。この問題の解決策を見つけた人はいますか?

grails バージョン 2.3.7 の使用 Cxf バージョン 1.1.4 cxf-client 1.6.1

4

1 に答える 1

0

CXF クライアント プラグインを少し変更することで、同じ問題を回避することができました。WebServiceClientFactoryImpl で、JaxWSProxyFactoryBean の作成を次のように変更します。

Bus bus = Holders.grailsApplication.mainContext.getBean("cxf") as Bus
JaxWsProxyFactoryBean clientProxyFactory = new JaxWsProxyFactoryBean(serviceClass: serviceInterface,
            address: serviceEndpointAddress, bus: bus)

CXF プラグインは、org.apache.cxf.bus.spring.SpringBus タイプの「cxf」Bean を作成します。CXF クライアントは、CXF Web サービスを壊すように見える別のバスを (デフォルトで) 作成します。CXF クライアントで同じバスを使用することで、問題は解決されました。

于 2014-12-31T12:28:43.610 に答える