Hybris v.1905 Не удается развернуть пульт. GenericItemEJBImpl не предоставляет удаленный доступ - PullRequest
1 голос
/ 20 февраля 2020

После обновления hybris 6.7 -> 1905, начал получать ошибки при импорте категорий через горячую папку

Caused by: java.lang.UnsupportedOperationException: Cannot unwrap the Remote. 'GenericItemEJBImpl' doesn't expose the Remote.
    at de.hybris.platform.core.WrapperFactory.unwrap(WrapperFactory.java:788) ~[coreserver.jar:?]
    at de.hybris.platform.core.WrapperFactory.unwrap(WrapperFactory.java:753) ~[coreserver.jar:?]
    at de.hybris.platform.core.WrapperFactory.unwrap(WrapperFactory.java:748) ~[coreserver.jar:?]
    at de.hybris.platform.persistence.ItemEJBImpl.unwrap(ItemEJBImpl.java:370) ~[coreserver.jar:?]
    at de.hybris.platform.persistence.link.LinkEJBImpl.setSource(LinkEJBImpl.java:65) ~[coreserver.jar:?]
    at de.hybris.platform.jalo.link.Link$4.compute(Link.java:250) ~[coreserver.jar:?]
    at de.hybris.platform.jalo.Item$CachedSetter.tryToCompute(Item.java:934) ~[coreserver.jar:?]
    at de.hybris.platform.jalo.Item$CachedSetter.set(Item.java:927) ~[coreserver.jar:?]
    at de.hybris.platform.jalo.Item$CachedSetter.set(Item.java:884) ~[coreserver.jar:?]
    at de.hybris.platform.jalo.link.Link.setSource(Link.java:253) ~[coreserver.jar:?]
    at jdk.internal.reflect.GeneratedMethodAccessor3776.invoke(Unknown Source) ~[?:?]
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
    at de.hybris.platform.jalo.type.ReflectionAttributeAccess$AttributeMethod.invokeSetter(ReflectionAttributeAccess.java:818) ~[coreserver.jar:?]
    at de.hybris.platform.jalo.type.ReflectionAttributeAccess.setValue(ReflectionAttributeAccess.java:1005) ~[coreserver.jar:?]
    at de.hybris.platform.jalo.Item.setAttribute(Item.java:2383) ~[coreserver.jar:?]
    at de.hybris.platform.jalo.link.Link.setAttribute(Link.java:146) ~[coreserver.jar:?]
    at de.hybris.platform.jalo.Item.setAllAttributesInternal(Item.java:2203) ~[coreserver.jar:?]
    at de.hybris.platform.jalo.Item$18.execute(Item.java:2145) ~[coreserver.jar:?]
    at de.hybris.platform.tx.Transaction.execute(Transaction.java:1181) ~[coreserver.jar:?]
    at de.hybris.platform.tx.Transaction.execute(Transaction.java:1149) ~[coreserver.jar:?]
    at de.hybris.platform.jalo.Item.setAllAttributes(Item.java:2140) ~[coreserver.jar:?]
    at de.hybris.platform.jalo.Item.setAllAttributes(Item.java:2120) ~[coreserver.jar:?]

Не повезло в отладке, поскольку IDE не удалось декомпилировать de.hybris.platform.core.WrapperFactory
Поиск в Google также не прояснил проблему, поэтому любая помощь в понимании происходящего будет оценена

UPD

Проблема актуальна для 1905 OOTB B2B Ускоритель (https://help.sap.com/viewer/4c33bf189ab9409e84e589295c36d96e/1905/en-US/8acc8a5a86691014a20781b3f738213e.html)

Для воспроизведения можно использовать следующий импекс:

$productCatalog=Default
$catalogVersion=catalogversion(catalog(id[default=$productCatalog]),version[default='Staged'])[unique=true,default=$productCatalog:Staged] 
$supercategories=source(code, $catalogVersion) 
$categories=target(code, $catalogVersion)[unique=true]

INSERT_UPDATE CategoryCategoryRelation;$categories;$supercategories;
;brands:electronicsProductCatalog;brand_75:electronicsProductCatalog;

Установка на false свойство persistence.legacy.mode решает проблему, но я не уверен, что это правильный способ ее исправить

...