在某些情况下,不会以传统模式为假在Impex上触发拦截器

2020-09-19 16:21发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,我为自己的自定义类型和扩展了Product的子类型创建了PrepareIntercepter。 在前一种情况下,拦截器在通过impex导入时触发。 但是在后一种情况下,不会触发。 旧版模式设置为false。 看来ModelService仅在我自己的自定义类型上被调用。 我对Product和Category尝试了相同的操作,这两个操作都已经存在,但是没有被调用。 我可以在下面看到调试日志。

DEBUG()((00000FFM))[DefaultImportProcessor]主脚本的第3行:###切换到旧版导入处理器###

这是杂交规范吗? 这个问题有解决方案吗?

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,我为自己的自定义类型和扩展了Product的子类型创建了PrepareIntercepter。 在前一种情况下,拦截器在通过impex导入时触发。 但是在后一种情况下,不会触发。 旧版模式设置为false。 看来ModelService仅在我自己的自定义类型上被调用。 我对Product和Category尝试了相同的操作,这两个操作都已经存在,但是没有被调用。 我可以在下面看到调试日志。

DEBUG()((00000FFM))[DefaultImportProcessor]主脚本的第3行:###切换到旧版导入处理器###

这是杂交规范吗? 这个问题有解决方案吗?

付费偷看设置
发送
4条回答
95年老男孩
1楼 · 2020-09-19 16:55.采纳回答

我发现了为什么在服务层模式下没有调用我的拦截器的原因。 它与类型是否扩展Product无关,而与impex语法无关。 从hybris Commerce Suite版本5.1.1开始,如果导入遇到标题行的参数" allownull"或" forceWrite",则导入将动态切换到旧版模式。 我不知道此规范会发生变化,并且我的impex使用[allownull = true]作为修饰符,因此发生了这种切换。 这是在以下维基页面的"属性相关修饰符的提示"部分中编写的: https://wiki .hybris.com/display/release5/ImpEx + Syntax ,但很重要,因为脚本生成器生成的默认导入脚本可能具有allownull或forceWrite作为修饰符。 关于产品类型的脚本始终包含这些内容。 因此,只要使用默认导入脚本,就永远不会在服务层上处理导入。

DafaDDDa
2楼-- · 2020-09-19 16:32

我不明白为什么我的拦截器现在无法在impex和hotfolder上运行。 非常感谢。

您保存我的一天! :)

暮风yp
3楼-- · 2020-09-19 16:38

不确定我是否遵循…..传统模式直接使用Jalo,因此没有服务层,因此也没有拦截器。

绿领巾童鞋
4楼-- · 2020-09-19 16:47

您好,Yuto,谢谢您的详细解释! 我还尝试在5.2.0.0版本上打开调试模式时重现该问题。 它按预期工作。 亲切的问候莉莉

一周热门 更多>