当前位置: 首页 > 知识库问答 >
问题:

如何在Hybris中回滚Impx导入

郦昆
2023-03-14

当任何impex行出现故障时,是否可以从同一impex文件中回滚以前导入的所有行,并停止进一步执行

共有2个答案

安建木
2023-03-14

Impex导入不支持事务,因此无法回滚。您需要使用flex为将来的回滚进行定制开发。另一方面,更新/插入交易中的项目是不可行的,因为数千名在线用户可能正在网站或服务上等待。

我建议建立故障线路的通知机制,以支持团队。

如果项目可以同步,您可以为它们创建临时目录,并在导入成功后进行同步。

宫高义
2023-03-14

如果您使用ImpexService导入Impex,则可以使用hybrisTransaction

Transaction tx = Transaction.current();
tx.begin(); 
boolean success = false;
try
{
   // Import your impex here and catch exceptions that can occur
   doSomeBusinessLogic();
   success = true;
}
finally
{
   if( success )
      tx.commit();
   else
      tx.rollback();
}

您可以在这里找到hybris文档:https://help.hybris.com/1808/hcd/8c7387f186691014922080f2e053216a.html

 类似资料:
  • 我为教育阿帕奇骆驼交易编写了此代码 我在发生错误后使用事务处理,我必须触发事务回滚,但由于某种原因,消息保留在SAMPLE_2和SAMPLE_3队列中。为什么? 更新: 我添加了豆子 并修复路线,但这对我没有帮助: 我在文档中找到了这个配置 如何从这个xml创建bean?

  • 我在使用@Transactional注释进行事务回滚时遇到了一个问题。 我在backingbean、service和dao类中有以下方法:

  • 我正在从SAP Hybris导出数据。我导入的数据也有分号(;)。在导出的数据中,我看到分隔符是;这阻止了我拆分数据和工作。有没有办法把这个分隔符改成别的? 我知道这可以通过更改“csv.fieldseparator”属性来实现,但这会影响到所有地方,我在生产中负担不起。。如有任何建议,将不胜感激

  • 我只在选择创建基本数据复选框时进行了系统更新。我注意到有很多导入的弹劾x。例如essential-data.impex、essential-data_en.impex、essential-data_de.impex、essential-data_ch.impexja、br等。将近7种不同的语言特定的弹劾x被导入。但是我想只导入它的一个版本和其他我不想导入的版本。你能给我建议如何实现这一点吗?谢谢。

  • 您可以在下面看到我的示例类。 基本上,我希望使用Axon的表来存储事件,并使用我自己的实体表来存储实体。我知道,如果我激发在聚合中处理的,将发布一个事件,之后它将转到,Axon将在其表中持久化该事件。 如何回滚表,还是应该为此使用补偿事件? 我的外部@EventHandler类:

  • 我正在尝试创建一个网站地图。通过开箱即用的方式复制我的网站开箱即用的存储中提供的ImpEx,为我的Hybris网站创建xml。弹劾。 如何在Hybris Sitemap XML中更改本地主机URL 网站地图。运行cronjob后生成的xml由多个标记组成,这些标记依次包含不同站点地图页面类型的位置。在产品和类别中,大多数产品和类别都是可见的,但这里的问题是它们是从localhost开始的。这种行为