点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我想以这种方式自定义Europe1PriceFactory,而不再希望使用DefaultPDTRowsQueryBuilder。
为此,我创建了一个新的扩展,其managersuperclass是:
managersuperclass =" de.hybris.platform.europe1.jalo.Europe1PriceFactory"
然后,我从新创建的扩展的coremodule中编辑了TZRpricefactoryManager类(请参阅:)
要覆盖getPDTRowsQueryBuilderFor方法以返回我的自定义类,并告诉hybris使用新的扩展名(local.properties)
default.pricefactory = tzrpricefactory
到这一步为止,它工作正常,但是现在我遇到了问题,即启动服务器后,属性restoreChannelStrategy为null。 在状态注册过程中,我可以看到已调用setter,从而设置了属性。 但是当我使用新的PriceFactory进行cronjob时,该属性再次为null。
要设置属性,我在新扩展的spring.xml中添加了以下行:
<属性名称=" retrieveChannelStrategy" ref =" retrieveChannelStrategy"/>
谁能告诉我我做错了什么以及如何正确地注入财产?
我正在使用Hybris 5.7.0.3
谢谢
对于那些想知道的人。 我最终通过重写createInstance方法来设置SessionFacory,以在每次创建新会话时都设置PriceFactoy。
解决了您的问题吗?
嗨,Paul,您可以在管理器中创建一个函数,该函数将在需要时为您提供值,而无需为管理器声明一个bean来注入该属性。 :
然后,而不是调用
您可以打电话
对您来说应该很好。
Juan
嗨,
要覆盖europe1pricefactory,1.告诉Hybris使用您的工厂。 在local.properties中:default.pricefactory = XXX(您做到了)2.声明一个bean @id =" XXX.manager" @ class ="与de.hybris.platform.europe1.jalo.Europe1PriceFactory兼容的东西"/p>
仅此而已。
只需在带有价格工厂类的spring xml文件中添加bean(我已经在CompanyCore扩展中添加了
)类文件:
一周热门 更多>