SMKReddy
SMKReddy

Reputation: 107

How to override the bean definition in spring XML bean definition

I want to oveerride the bean definition of below one.

<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>

To new one like below in new occ extension.

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

Can you please guide me how can we do this?

Upvotes: 0

Views: 1325

Answers (1)

Raushan Kumar
Raushan Kumar

Reputation: 1248

If you want to override the OOB populator, you can try spring-related bean declaration and changes.

<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>

Upvotes: 1

Related Questions