我有一个Java Spring3.0应用程序,它通过DIH3.1在数据库中插入数据,还使用DataImportHandler ( myBatis )让Solr3.6.1索引数据库数据以及索引二进制文件附件。因此,如果以下任何一项失败,我希望有回滚更改的事务:
1) 3)使用myBatis插入数据库
2) 3个插件的solr DIH索引
3)二进制文件的solr索引
我猜我需要使用JTA,因为我有多个数据源,但是我不知道如何配置其中的Solr。如何做到这一点?任何演示如何实现这一点的在线参考资料都会很棒。谢谢。
发布于 2012-12-08 21:46:36
发布于 2012-12-13 16:44:46
您还可以尝试使用HttpSolrServer替换索引的DIH更新,以便可以使用springs TransactionSynchronizationManager
if (TransactionSynchronizationManager.isSynchronizationActive()) {
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
//...
});
}https://stackoverflow.com/questions/13752351
复制相似问题