2014-10-20 22 views
0

我有以下的配置,不知道什麼是錯的,我不斷收到此錯誤,感謝您的幫助,謝謝使用與加工鏈網關,調度員沒有用戶錯誤

<int:chain input-channel="incoming"> 
     <int:splitter ref="split"/> 
      <int:filter ref="filter" discard-channel="loggit" /> 
       <int:payload-type-router default-output-channel="loggit" > 
       <int:mapping type="a.b.c" channel="channel1" />   
     </int:payload-type-router>  
    </int:chain> 

    <int-jdbc:stored-proc-outbound-gateway 
       id="DB_POLLAR" 
       data-source="dataSource" 
       request-channel="channel1" 
       reply-channel="loggit" 
       is-function="false" 
       expect-single-result="false" 
       stored-procedure-name="PKG.proc_get">     
       <int-jdbc:parameter name="rowid" expression="payload" />    
       <int-jdbc:returning-resultset name="ataset" row-mapper="dataMapper"/>  
       <int-jdbc:request-handler-advice-chain> 
        <bean class="com.a.b.c.DbCallAdvice" /> 
       </int-jdbc:request-handler-advice-chain>     
    </int-jdbc:stored-proc-outbound-gateway> 
+0

我有另一種是通過負載型路由器,由於某種原因,有線存儲進程內,出站網關沒有這個問題,頗爲困惑。 – Mark1234 2014-10-20 16:39:08

回答

1

<int-jdbc:stored-proc-outbound-gateway>request/reply成分,所以如果你的目標程序返回的東西被包裝到replyMessage和框架試圖將其發送到output(reply)-channel

既然你沒有它,並且沒有replyChannel標題,那麼你最終會得到Dispatcher has no subscribers error

如果你不感興趣的reply從該過程,請考慮使用

<int-jdbc:stored-proc-outbound-channel-adapter> 
+0

我確實有reply-channel =「loggit」,或者我缺少其他東西? – Mark1234 2014-10-20 18:14:57

+0

哦!抱歉。我看到。你有一個訂閱了「loggit」頻道的組件嗎?請關注StackTrace – 2014-10-20 18:19:09

+0

謝謝Artem,loggit是日誌記錄通道適配器,只是爲了打印截至目前。我能夠解決這個問題,但我不知道爲什麼這發生在第一位。我在文件中定義了第三個,我還沒有連線,但是我已經爲這個產生了錯誤。如果你能幫助你知道這是如何工作的,那麼改變它的ID到其他的東西可以修正錯誤。 – Mark1234 2014-10-20 18:41:12

相關問題