Как переопределить определение компонента в определении компонента spring XML

#spring #hybris

#spring #sap-commerce-cloud

Вопрос:

Я хочу переопределить определение компонента ниже одного.

 <bean id="productPrimaryImagePopulator" parent="defaultProductPrimaryImagePopulator">
    <property name="imageFormatMapping" ref="imageFormatMapping"/>
    <property name="imageFormats">
        <list>
            <value>zoom</value>
            <value>product</value>
            <value>thumbnail</value>
            <value>cartIcon</value>
        </list>
    </property>
</bean>
 

На новый, как показано ниже, в новом расширении occ.

 <bean id="productPrimaryImagePopulator" parent="defaultProductPrimaryImagePopulator">
    <property name="imageFormatMapping" ref="imageFormatMapping"/>
    <property name="imageFormats">
        <list>
            <value>sampleProduct</value>
        </list>
    </property>
</bean>
 

Не могли бы вы подсказать мне, как мы можем это сделать?

Ответ №1:

Если вы хотите переопределить заполнитель OOB, вы можете попробовать объявление и изменения компонента, связанные с spring.

 <bean id="testImageFormatMapping" parent="defaultImageFormatMapping">
    <property name="mapping">
        <map>
            <entry key="superZoom" value="1200Wx1200H"/>
            <entry key="zoom" value="515Wx515H"/>
            <entry key="store" value="365Wx246H"/>
            <entry key="product" value="300Wx300H"/>
            <entry key="thumbnail" value="96Wx96H"/>
            <entry key="cartIcon" value="65Wx65H"/>
            <entry key="styleSwatch" value="30Wx30H"/>
        </map>
    </property>
</bean>

<bean id="testProductPrimaryImagePopulator" parent="defaultProductPrimaryImagePopulator">
    <property name="imageFormatMapping" ref="testImageFormatMapping"/>
    <property name="imageFormats">
        <list>
            <value>zoom</value>
            <value>product</value>
            <value>thumbnail</value>
            <value>cartIcon</value>
        </list>
    </property>
</bean>

<bean id="testProductGalleryImagesPopulator" parent="defaultProductGalleryImagesPopulator">
    <property name="imageFormatMapping" ref="testImageFormatMapping"/>
    <property name="imageFormats">
        <list>
            <value>zoom</value>
            <value>product</value>
            <value>thumbnail</value>
        </list>
    </property>
</bean>

<bean id="testProductPopulator"
        parent="defaultProductPopulator">
    <property name="productPrimaryImagePopulator" ref="testProductPrimaryImagePopulator"/>
    <property name="productModelUrlResolver" ref="testcommercewebservicesProductModelUrlResolver"/>
</bean>

<bean id="testProductConverter" parent="defaultProductConverter">
    <property name="populators">
        <list>
            <ref bean="testProductPopulator"/>
        </list>
    </property>
</bean>