[英]Spring integration inbound jms adapter error-channel does not invoke
該方案是入站jms適配器->服務激活器(數據庫搜索,業務邏輯,插入或更新)
<int-jms:message-driven-channel-adapter id="swiftAdapterInput" channel="mt950"
connection-factory="connectionFactory" destination-name="${integration.swift.jms.queue.from}" pub-sub-domain="false"
auto-startup="false" error-channel="errorChannel" transaction-manager="transactionManager" acknowledge="transacted" />
<int:service-activator input-channel="errorChannel" ref="errorHandler" />
<bean id="errorHandler" class="nest.integration.utils.error.ErrorHandler" />
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory" />
</bean>
當在我的服務激活器中引發異常時,我的errorHandler可以正常工作,但異常是在結束時(提交后),例如db unique constrat異常,該消息不會進入錯誤通道,而是僅回滾到jms隊列。
但在這種情況下,我也需要我的errorHander,因為我需要發送電子郵件異常等信息。
提前准備好坦克,塔馬斯(Tamas)
我認為您必須在errorHandler
精簡TX的問題,但是不要提交。
這就是為什么從DefaultMessageListenerContainer
獲得egyediségre vonatkozó megszorítás nem tel
的原因,因為該DB錯誤是在提交時引起的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.