問題タブ [cxf-codegen-plugin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - CXF : org.apache.cxf.interceptor.Fault: 呼び出し中の引数の数が間違っています
apache cxf と codegen maven プラグイン (どちらもリリース 3.1.11) を使用して単純なクライアントを実装しています。
これが私のサンプル wsdl です。
クライアント エンドポイントを変更する必要があるため、cxf.frontend 機能を使用することにしました。シンプルなクライアントを作成し、API を使用してアドレス プロパティを設定しました。コードは次のとおりです。
次に、ユニット テスト内でサービス (codegen プラグインによって作成されたサービス) を呼び出します。
しかし、ソープ障害 org.apache.cxf.binding.soap.SoapFault: wrong number of arguments while invoking public void it.test.cxf.impl.New_Port_0SoapImpl.openTk を受け取ります。
問題は org.apache.cxf.jaxws.interceptors.WrapperClassOutInterceptor 内にあり、特にこのインターセプターがメソッド getHelperWrapper を使用して WrapperHelper クラスを作成するときに発生することがわかりました。次に、このラッパーを使用して、codegen プラグイン (createWrapperObject(objs);) によって作成された ObjectFactory を使用してオブジェクトを作成します。これにより、すべてのフィールドがヌルの新しい InputMappin1 オブジェクトが生成されます。
誰かが私にこの振る舞いと、これを回避する方法を説明できますか? ある種のカスタム インターセプターを実装する必要がありますか、それとも構成が不足していますか?