2017-10-26 25 views
0

を公開するメッセージングゲートウェイIは、メッセージングゲートウェイによって露出されたインタフェーススプリング統合 - オーバーロードされたメソッド

SomeInterface.java`

interface SomeInterface { 
    Outcome doSomething(String p1); 
    Outcome doSomething(String p1, String p2); 
} 

残り-beans.xmlの

を有します
<int:gateway id="rest.someRestClient" 
      service-interface="SomeInterface"> 
    <int:method name="doSomething" request-channel="rest.doSomething1"/> 
    <int:method name="doSomething" request-channel="rest.doSomething2"/> 
</int:gateway> 

<int:channel id="rest.someRestClient"/> 

<int-http:outbound-gateway url="${rest.http.url}/v1/doSomething1" 
          request-channel="rest.doSomething1" 
          http-method="POST" 
          message-converters="rest.messageConverter" 
          header-mapper="rest.headerMapper" 
          expected-response-type="Outcome"> 
</int-http:outbound-gateway> 

<int-http:outbound-gateway url="${rest.http.url}/v1/doSomething2" 
          request-channel="rest.doSomething2" 
          http-method="POST" 
          message-converters="rest.messageConverter" 
          header-mapper="rest.headerMapper" 
          expected-response-type="Outcome"> 
</int-http:outbound-gateway> 

インターフェイスに定義されている両方のメソッドを公開する方法がわからないメソッドがオーバーロードされています。

上記のxmlは、オーバーロードされたメソッドのために機能しません。

答えて

1

@MessagingGateway注釈を使用してください(チャンネルを設定する方法では@Gateway)。注釈を見つけてXMLと同じ方法でゲートウェイを生成する@IntegrationComponentScanと一緒に使用してください。

関連する問題