15.11.2014 Views

hybris - AEM 5.6 eCommerce framework integration.pdf

hybris - AEM 5.6 eCommerce framework integration.pdf

hybris - AEM 5.6 eCommerce framework integration.pdf

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

CQ Gems on Adobe Experience Manager<br />

Felix Oghina | <strong>hybris</strong>/<strong>AEM</strong> <strong>5.6</strong> <strong>eCommerce</strong> <strong>framework</strong> <strong>integration</strong><br />

© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.<br />

1


<strong>eCommerce</strong> <strong>framework</strong> review<br />

© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.<br />

2


Hybris <strong>integration</strong>: product data flow<br />

Hybris PIM data exposed<br />

through Omni Commerce<br />

Connect<br />

(ycommercewebservices)<br />

Hybris<br />

Importer<br />

PIM data imported into<br />

CQ in<br />

/etc/commerce/products<br />

Catalog<br />

Publishing<br />

PIM data published as a<br />

catalog to /content/site<br />

© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.<br />

3


Hybris <strong>integration</strong>: product data display<br />

Product Component<br />

Hybris <strong>eCommerce</strong><br />

connector<br />

Volatile data directly<br />

from <strong>hybris</strong><br />

PIM data from<br />

/etc/commerce/products<br />

© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.<br />

4


User synchronization<br />

• Lazy import of <strong>hybris</strong> users into CQ<br />

• Lazy creation of CQ users in <strong>hybris</strong><br />

• CQ stores <strong>hybris</strong> authentication data for later re-use<br />

• Pluggable architecture for custom authentication schemes (SAML, OAuth)<br />

User logs in<br />

Hybris user<br />

is created<br />

Hybris user<br />

is imported<br />

© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.<br />

5


Demo<br />

© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.<br />

6


Customizing the import process<br />

• Need to add PIM attributes? Extend<br />

HybrisResponseParser.<br />

• Need to change the imported data<br />

hierarchy? Extend ImportHandler.<br />

• Need to customize what services<br />

are called when importing data?<br />

Extend HybrisImporter.<br />

HybrisResponseParser<br />

HybrisImporter<br />

ImportHandler<br />

© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.<br />

7


Customizing the catalog rollout process<br />

• Extend DefaultHybrisService<br />

• #catalogRolloutHook<br />

• #sectionRolloutHook<br />

• #productRolloutHook<br />

• Extend HybrisFactory<br />

• #getCommerceService<br />

• Update cq:commerceProvider properties<br />

© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.<br />

8


Customizing product and price loading<br />

• HybrisFactory#getProduct is responsible for creating Product instances<br />

• HybrisSession#getProductPriceInfo is responsible for getting the correct price<br />

for a product for the current user<br />

© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.<br />

9


Other extension points<br />

• HybrisService#login is responsible for extracting SessionInfo from a request<br />

• HybrisFactory#getSession is responsible for creating HybrisSession instances<br />

• ProfileSynchronizer#syncProfile is responsible for sync the user’s CQ profile<br />

to the respective <strong>hybris</strong> account<br />

• HybrisConnection is responsible for actually sending HTTP(S) requests to the<br />

Hybris server<br />

• HybrisAuthenticationHandlers are responsible for authenticating HTTP(S)<br />

requests. The one with the highest service.ranking OSGi property is picked<br />

© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.<br />

10


Resources<br />

• Adobe.com/go/gems<br />

• Upcoming Gem Sessions<br />

• On-demand Gem Recordings<br />

• In-person events where you can met Adobe Experts<br />

• Developer Resources:<br />

• @Adobe CQ @bdelacretaz @paolomoz<br />

• Adobe WEM<br />

• Blogs<br />

• Adobe Marketing Cloud<br />

• Adobe CQ Enterprise Users Group<br />

Adobe Day Software User Group - CQ5 CRX ADEP<br />

© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.<br />

11

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!