Can someone please answer this?
I am also facing the similar problem.



On Fri, Mar 23, 2018, 5:12 PM akash shinde <[email protected]> wrote:

> Hello,
>      My requirement is to achieve ignite cache update operation and
> database write operation in single transaction.
> Right now I am trying to use  JTA transaction management. I have created
> below IgniteConfiguration  using transactionConfiguration. But I am not
> sure how to configure XAResource to this transaction manager.
> I will be needing two XAResource here 1)Datasource(JDBC data source)
> 2)Ignite cache.
>
> Please suggest how can I achieve this JTA transaction using two
> XAResources.
>
> Please also suggest after all these configuration how to
> get JtaTransactionManager instance to initiate the transaction. Currently
> I am using Narayana JTA implementation.
>
>
> private IgniteConfiguration getIgniteConfiguration(IgniteSpringBean ignite) {
>
>   IgniteConfiguration cfg = new IgniteConfiguration();
>   cfg.setIgniteInstanceName("springDataNode");
>   cfg.setPeerClassLoadingEnabled(false);
>   cfg.setRebalanceThreadPoolSize(4);
>
>  * cfg.setTransactionConfiguration(transactionConfiguration());*
>
>   
> cfg.setCacheConfiguration(getIPContainerCacheConfiguration(),getIPContainerIPV4CacheConfiguration(),getUserPermissionCacheConfiguration(),getUserAccountCacheConfiguration());
>   return cfg;
> }
>
>
> @Bean
> public TransactionConfiguration transactionConfiguration(){
>   TransactionConfiguration configuration = new TransactionConfiguration();
>   Factory factory = new Factory() {
>     @Override
>     public Object create() {
>       return jtaTransactionManager();
>     }
>   };
>   configuration.setTxManagerFactory(factory);
>   *configuration.setUseJtaSynchronization(true);*
>   return configuration;
> }
>
> @Bean
> public PlatformTransactionManager jtaTransactionManager() {
>   JtaTransactionManager tm = new JtaTransactionManager();
>   tm.setTransactionManager(transactionManager());
>   return tm;
> }
>
> @Bean
> public TransactionManager transactionManager() {
>   return new TransactionManagerImple();
> }
>
>
> Thanks,
> Akash
>

Reply via email to