2017-09-15 120 views
0

我在Websphere應用程序服務器上有這個奇怪的問題,但我無法理解它來自哪裏。 如果我沒有解釋清楚,我很抱歉。 應用程序服務器配置了60秒的事務超時。 最近我們增加超時與事務批註的方法在春季websphere 8.5.5事務超時+ Spring tx的奇怪問題4.2.5

@Transactional(timeout=15) 

從部署的時候,它看起來像所有事務註釋的方法好像有15秒的事務超時。 我們已經檢查過,交易中涉及的所有方法在註釋中沒有任何超時。

應用程序服務器是帶有Spring Tx 4.2.5的Websphere 8.5.5.11。 我們沒有嘗試重新啓動服務器,因爲它在生產中。 感謝您的耐心等待。

回答

0

我找到了解決方案。您必須明確設置默認超時值,而不是自動使用Web服務器的默認超時值。

### TRANSACTION MANAGER ### 

    <bean id="jtaTransactionManager" class="org.springframework.transaction.jta.JtaTransactionManager" > 
     <property name="globalRollbackOnParticipationFailure" value="true" /> 
     <property name="defaultTimeout" value="120" />  
</bean>  



     <tx:annotation-driven transaction-manager="jtaTransactionManager" /> 

我不知道這是春季tx圖書館和與websphere事務管理器交互的問題。