标签: hybris

Hybris Impex文件中列组合的唯一值

我正在创建一个Hybris impex文件以导入我的数据库.

我想用文件中的数据执行INSERT_UPDATE操作,所以我需要告诉Hybris哪些列需要是唯一的,以便它知道何时更新记录而不是插入它.

我知道要告诉Hybris某个列需要是唯一的,我可以将唯一属性添加到该列,如下所示:

INSERT_UPDATE SLEmployee;Firstname[unique=true, required=true];Lastname[required=true];Function;
Run Code Online (Sandbox Code Playgroud)

但是根据我上面的例子,我怎么告诉Hybris Firstname + Lastname列的组合必须是唯一的?

hybris impex

4
推荐指数
1
解决办法
5650
查看次数

我怎么知道在运行时为我的Spring bean设置了哪些实现类?

在hybris中,是否有一种简单的方法可以知道哪个实现类正在用于某个Spring bean?

我的意思是,我可以通过执行以下操作来覆盖Bean:

<alias name="myCheckoutFacade" alias="checkoutFacade"/>
<bean id="myCheckoutFacade" class="com.pedra.facades.checkout.impl.MyCheckoutFacadeImpl" scope="tenant" parent="defaultCheckoutFacade">
    <property name="commerceCheckoutService" ref="myCommerceCheckoutService"/>
</bean>
Run Code Online (Sandbox Code Playgroud)

...所以现在当Spring需要使用别名创建一个bean时,checkoutFacade实现类将MyCheckoutFacadeImpldefaultCheckoutFacade其他一些xml配置文件中定义的重写相反.

那么有没有办法在运行时知道哪个实现类被用于某个Spring bean定义?不用调试代码,我的意思是.

hybris spring-bean

4
推荐指数
1
解决办法
2213
查看次数

Hybris Mockito:获取异常没有(分离的)模型的LocaleProvider

我正在Hybris项目的门面层面编写测试用例.我正在创建模型实例并设置名称和代码.模型有一些属性本地化,因为我得到了no LocaleProvider异常.

java.lang.IllegalStateException: there is no LocaleProvider for (detached) model de.hybris.platform.servicelayer.model.ItemModelContextImpl@66c677a7
at de.hybris.platform.servicelayer.model.ItemModelContextImpl.getLocaleProvider(ItemModelContextImpl.java:481)
at de.hybris.platform.servicelayer.model.ItemModelContextImpl.getCurrentLocale(ItemModelContextImpl.java:469)
at de.hybris.platform.servicelayer.model.ItemModelContextImpl.toDataLocale(ItemModelContextImpl.java:406)
at de.hybris.platform.servicelayer.model.ItemModelContextImpl.getLocalizedValue(ItemModelContextImpl.java:323)
at de.hybris.platform.catalog.model.classification.ClassificationAttributeModel.getName(ClassificationAttributeModel.java:227)
at de.hybris.platform.catalog.model.classification.ClassificationAttributeModel.getName(ClassificationAttributeModel.java:217)
Run Code Online (Sandbox Code Playgroud)

这是一个测试类

@RunWith(PowerMockRunner.class)
@PrepareForTest({ Locale.class, Config.class })
public class HCCB2BClassificationFacadeUnitTest {

@InjectMocks
private final HCCB2BClassificationFacade hccb2bClassificationFacade = new HCCB2BClassificationFacadeImpl();

@Mock
HCCB2BClassificationService hccb2bClassificationService = new HCCB2BClassificationServiceImpl();

@Mock
private SessionService sessionService;

@Mock
private HCCB2BClassificationDAO hccb2bClassificationDAO;

@Mock
private SearchRestrictionService searchRestrictionService;

@Before
public void setUp() throws SystemException {
    MockitoAnnotations.initMocks(this);
    ClassAttributeAssignmentModel classAttributeAssignmentModel = new ClassAttributeAssignmentModel();
    ClassificationAttributeModel classificationAttributeModel = new ClassificationAttributeModel();
    classificationAttributeModel.setCode("Procedure"); …
Run Code Online (Sandbox Code Playgroud)

mocking mockito powermock hybris powermockito

4
推荐指数
1
解决办法
2616
查看次数

Hybris的Extension&Add Ons有什么区别

我认为Default Extension可以封装业务逻辑,类型定义,配置和添加.

我知道这Add On 也是一种 Extensions 延伸正常扩展.

我进一步知道Add Ons扩展功能而不涉及CODE Base.

来自Hybris专家的任何意见都得到了高度赞赏.

hybris

4
推荐指数
2
解决办法
1万
查看次数

如何从local.properties获取配置数据到impex?

是否可以从local.properties配置文件中定义的环境变量中获取值并通过impex文件访问它?

防爆.

$someMacro=<some variable from config>
Run Code Online (Sandbox Code Playgroud)

谢谢!

hybris impex

4
推荐指数
1
解决办法
2416
查看次数

如何在Jenkins Groovy管道中调用Ant

我创建了一个Jenkins管道工作.在这项工作中,我想使用Ant进行构建.我在Manage **Jenkins > Global Tool Configuration**as中配置了Ant变量Ant1.9.1= D:\path_to_hybris\hybris\bin\platform\apache-ant-1.9.1.

在自由式jenkins Job中,我知道build.xml位置可以在下面的屏幕截图中指定: 在此输入图像描述

但是我无法理解如何在此之后指定ant groovy脚本,特别是在哪里可以提到build.xml文件的路径:

def antHome = tool 'Ant1.9.1'
????
????
Run Code Online (Sandbox Code Playgroud)

ant groovy jenkins hybris jenkins-pipeline

4
推荐指数
2
解决办法
1万
查看次数

Hybris数据库连接

出于某种原因,我们需要运行数据库本机查询而不是灵活的查询.为了运行这些查询,我们需要数据库连接,所以我们如何从Hybris获取jdbcTemplate或DataSource对象.

hybris

4
推荐指数
1
解决办法
1127
查看次数

如何在弹性查询中做UNION

我想合并catetegory_idsubCategory_id成一列。但是我不知道如何在灵活的查询中做到这一点。下面的代码是我想要做的

SELECT * FROM 

(SELECT
    ccr.targetpk as pk
    FROM
    Categories cc
    JOIN Cat2CatRel ccr ON cc.pk = ccr.sourcepk
    WHERE cc.p_code = '0106') 

UNION  SELECT CATE.pk as pk FROM CATEGORIES cate WHERE CATE.p_code = '0106'
Run Code Online (Sandbox Code Playgroud)

我需要一个与上述代码相同的灵活查询。

hybris

4
推荐指数
1
解决办法
1938
查看次数

SAP Hybris 电子商务:在 CronJob 中发送电子邮件

我创建了一个完美运行的 CronJob。但我想在此生成电子邮件的发送Cronjob。我跟着网上的教程。我从创建 itemType 开始ProductsApprovedEmailProcess

然后我创建productsApprovedEmailProcess定义流程引擎执行的步骤如下

然后我添加了一个EmailContext来保存要传递给电子邮件模板的数据,如下所示

public class ProductsApprovedEmailContext extends CustomerEmailContext
{

private String message;

@Override
public void init(final StoreFrontCustomerProcessModel processModel, final EmailPageModel emailPageModel)
{
    super.init(processModel, emailPageModel);
    if (processModel instanceof ProductsApprovedEmailProcessModel)
    {
        setMessage(((ProductsApprovedEmailProcessModel) processModel).getMessage());
    }
}


public String getMessage()
{
    return message;
}


public void setMessage(final String message)
{
    this.message = message;
}
}
Run Code Online (Sandbox Code Playgroud)

ProductsApprovedEmailContext 在 Spring 中注册为 bean,如下所示

    <bean id="productsApprovedEmailContext" class="com.hybris.training.facades.process.email.context.ProductsApprovedEmailContext"
        parent="abstractEmailContext"
        scope="prototype" >
</bean>
Run Code Online (Sandbox Code Playgroud)

然后我创建了 2 个 …

cron sendmail hybris

4
推荐指数
1
解决办法
5335
查看次数

Hybris:错误:Solr 主目录 &lt;directory&gt; 包含 solr.xml

通过运行我的 hybris 服务器,我遇到了这个问题。到目前为止,网络上没有提及,任何可能导致这种情况以及如何解决的想法?

ERROR: Solr home directory C:\Projects\Beiselen\hybris\config\solr\instances\default must contain solr.xml

Mar 16, 2020 12:19:05 PM de.hybris.platform.solr.controller.commands.StartSolrServersCommand apply
SEVERE: Failed to start Solr server for instance [name: default, hostname: localhost, port: 8983, mode: STANDALONE]
de.hybris.platform.solr.controller.SolrControllerException: Failed to start Solr server for instance [name: default, hostname: localhost, port: 8983, mode: STANDALONE]
        at de.hybris.platform.solr.controller.commands.StartSolrServerCommand.startSolrServer(StartSolrServerCommand.java:144)
        at de.hybris.platform.solr.controller.commands.StartSolrServerCommand.executeCommand(StartSolrServerCommand.java:115)
Run Code Online (Sandbox Code Playgroud)

solr hybris

3
推荐指数
1
解决办法
297
查看次数