cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

How to customize Hybris component(FooterNavigationComponent) change default JSP path

Former Member
0 Likes
1,731

I have a FooterNavigationComponent, and according to Hybris mechanism, loading impex file matedata, it will go to path:

\hybris\bin\custom\ABC_Extension\web\webroot\WEB-INF\views\responsive\cms\ to retrieve FooterNavigationComponent.jsp.

Now since I have an addon extension, would I change this FooterNavigationComponent.jsp path, so let addon project auto copy this JSP to another ABC_Extension folder path and let Hybris could also recognize it ?

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Likes

Guangwei, you can extend the DefaultAddOnCMSComponentRenderer to override methods getVariablesToExpose, exposeVariables and getView() to change the renderer path from extension to your addon.

Followed by creating your own extended renderer class. One needs to define bean for the renderer in your addon-web-spring.xml.

 <!-- Renderers for CMS Components in addons -->
     <bean id="customAddOnCMSComponentRenderer" class="com.addon.renderer.CustomAddOnCMSComponentRenderer"
         parent="addOnJspIncludeCMSComponentRenderer">
     </bean>
 
 <!-- Renderer for FooterComponent -->
     <bean id="footernavigationcomponentRenderer" parent="customAddOnCMSComponentRenderer" />
     <bean id="footernavigationcomponentMapping" parent="addonCmsComponentRendererMapping">
         <property name="typeCode" value="FooterNavigationComponent" />
         <property name="renderer" ref="footernavigationcomponentRenderer" />
     </bean>

Similarly, one can define the bean with the respective custom renderer to can get the default path of JSP from addon.

Thanks, Viji

Former Member
0 Likes

Hi Guangwei

Please have a look at the link below
https://help.hybris.com/6.7.0/hcd/8acfaf1186691014af82b18f46e90f49.html


Change to reference the customized page view names. 
For example, for the page view for the cartPopUp: Old: String CartPopup = "fragments/cart/cartPopup"; New: String CartPopup = ADDON_PREFIX + "fragments/cart/cartPopup"; Where: String ADDON_PREFIX = "addon:/b2ctelcostorefront/";
Former Member
0 Likes

Hi Saurabh,

Thank you for your comment. However, I found in the example you provide, the

public class MiniCartController extends AbstractController

but my class is extend

public class MiniCartComponentController extends AbstractAcceleratorCMSComponentController

so I can not direct return