HIGH INTEROPERABILITY WITH MAGNOLIA'S OPEN SUITE APPROACH
BORIS KRAFTCHIEF TECHNOLOGY OFFICER & CO-FOUNDERMAGNOLIA INTERNATIONAL
Magnolia is a registered trademark owned by Magnolia International Ltd.
FORRESTER’S CXM SOLUTION CATEGORIES
THE “OPEN SUITE” APPROACH
REST
JCR
WebDAV
THE “OPEN SUITE” APPROACH
THE “OPEN SUITE” APPROACH
Magnolia, a CMS as simple and flexible as your smartphone, engineered to be the center of an open suite approach to customer experience management.
BI-DIRECTIONAL INTEGRATION BETWEEN ALFRESCO & MAGNOLIA
Credit: Christmas Lights by Abhishek ShiraliSome Rights Reserved CC-BY 2.0
https://www.flickr.com/photos/abhishekshirali/11397502823
AXEL FAUSTPRODYNA SENIOR IT CONSULTANT /SOFTWARE ARCHITECT
“The open platform for business-critical content management and collaboration.”
In a (very) few words o Secure collaboration o Content-centric business processeso Compliant records managemento Open ECM for on-premise, cloud and mobile
USE CASE:ASSET COLLABORATION
Authors
Publisher
DirectAccess
SME
Marketing
External Agency
Authors
Publisher
DirectAccess
SME
Marketing
External Agency
Create draft video
Create storyboard
Fill with subject detailand sketch
Submit for „overhaul“
Review draftSubmit result
(generate poster)
USINGALFRESCO
Subject Expert Group
Marketing
COLLABORATION
Repository(on-premise)
Enterprise SyncHybrid Workflow
External
Agency
Cloud Media
ServicesCloud API
B2B / CLOUDON-PREMISE
OPEN SUITE:ESSENTIALS
Ext. Application
DAMRW
Ext. Repository
Ext. Application
CMIS +DAM R
DAMRW
Ext. Repository
Ext. Application
Ext. Process
RESTAPI
CMIS +DAM R
DAMRW
OPEN ISSUESMetadata support + mapping
Process initiation from Magnolia
All in all: ready-to-use (public) module
BI-DIRECTIONALINTEGRATION
HYBRID CONCEPTCMIS + RESTSimilar to Alfresco Public/Cloud APIAbstract and delegate details
FEATURE PLANSubmission via Asset App“Remote Review” via PulseOne-off / scheduled updateRendition support
1) Initiate asset process (REST)
2) Fetch / push asset(s) (CMIS)
N) Post/fetch updates to/for Pulse (REST)
N+1) Trigger review (REST)
N+2) Fetch / view result (CMIS)
N+3) Import asset(s) (CMIS)
N+4) Notify completion (REST)
PREVIEW
PREVIEW
FINAL REMARKSWork-in-progressDemo @ Magnolia Conference
Plan: Contribute to Open SuiteNon-Enterprise / basic features(i.e. read-write client service / CMIS Browser / simple
import)Magnolia + Alfresco modules
BUILDING A UTILITIES PORTAL WITH MAGNOLIA 5 & SAP
Credit: LVGA by Luigi RosaSome Rights Reserved CC-BY-SA 2.0http://flickr.com/photos/lrosa/3792516495
MATTEO PELUCCOTINEXT SENIOR SOFTWARE ENGINEER, @MATTEOPELUCCO
AZIENDEINDUSTRIALIDI LUGANOPublic utility companyProduces electricity & water. Imports gas.Retails electricity, gas & water in Ticino.
PROJECT OVERVIEW100k potential usersResponsive web design23 business processes to buildMigration from a productive environmentSensitive user data
OPEN SUITE APPROACH
Each of them interacts with SAP in a customized wayStandard form builder was not enough
NEED TO MODEL 23 PROCESSES
SAP-aware validatorsMultistep navigation barStep ValidatorsScriptable default values for input (eval)Final summary step
FORM BUILDER “RELOADED”
BUSINESS PROCESS SITE TREE
CHANGE PAYMENT METHOD
FORM BUILDER CUSTOMIZATIONS
SAP-AWARE VALIDATORS
Legacy SOAP-based SAP integration layerRefactoring not in project scope!No documentationOnly WSDL
LEGACY SAP INTEGRATION
SOLUTION: jUNIT Tests to reverse engineer SOAP layerJava Client: built with jax-ws, filled with jUnit test cases.Magnolia 5 IoC allowed our team to mock almost everything, without blocking front-end developers.
SAP URLs in magnolia.properties file No risk of accessing the wrong SAP environment.
LEGACY ALFRESCO DMSCustomer communications were stored in Alfresco
SOLUTION: ALFRESCO APIUsed standard Alfresco API to download documentsA dedicated Magnolia «DocumentDownloadServlet» transparently proxies the document download request
for a logged user, applying a security layer on top of it.
ALFRESCO CONNECTION VIA API
AUTHENTICATION VS AUTHORIZATION
Users are in SAPNo ACLs: everything is data-drivenRules not applicable on a hierarchical page tree
SOLUTION: PAGE RENDERERPage protection (for each page)Security layer exposed to freemarker
conditional presentation layer statementsuser interface personalization
Easy to test and debug
USER LOGIN
CONCLUSIONSMagnolia «open suite approach» easily allows to «plug» your integration activityForm Builder is very powerful and customizableMock activity is foundamental in projects like this. Magnolia IoC helps the project lifecycle and team workUser data security always on top of feature set
THANK S!
MAGNOLIA / HYBRIS INTEGRATION BASED ON RESTFUL WEB SERVICES
Credit: / /\\ by Thomas LeuthardSome Rights Reserved CC-BY 2.0
https://www.flickr.com/photos/thomasleuthard/7725793982
PAUL TINZOHWEBTISER SENIOR DEVELOPER
INTRODUCING HYBRIS
GOAL:MAGNOLIA ASCMS FORHYBRIS
USING MAGNOLIA’S REST APIMagnolia communicates to Hybris via RESTful web services
CMS PIMAuthor Instance Stage CatalogPublic Instance Online Catalog
AREAS OF USECart contentTeaser (Product) & Product CarouselCategoriesProduct details
wtM
ag
nolia
Exte
nsio
n
PUBLICINSTANCE
AUTHORI N S T A N C E
REST
XML
Online - Catalogue
• Product• Category• Cart
• Product• Category• Cart
REST
XML
Stage - Catalogue
• Product• Category• Cart
• Product• Category• Cart
PIM
3
COMPONENTS WITH PIM CONTENT1
2
Product Carousel
Product Details
Cart Content
1
2
3
REST INTERFACESProduct - List & DetailsRest Methods: GETURL Parameter - Products List & DetailsBoth Path /magnoliaws/restBoth Type productsBoth Catalog electronicsProductCatalogBoth Version OnlineBoth Language deList offset 0List limit 30Detail Product code 23355Detail currency USD
REST INTERFACESCategories - List & DetailsRest Methods: GETURL Parameter – Category List & DetailsBoth Path /magnoliaws/restBoth Type categoriesBoth Catalog electronicsProductCatalogBoth Version OnlineBoth Language deDetail Category code 577
REST INTERFACESCart – Retrieve Cart ContentRest Methods: GET
URL Parameter – Retrieve Cart ContentPath /magnoliaws/restType cartsessionId 7501A230F4E215E26F1903B0CDC4D9DD
REST INTERFACESCart/Add Product to CartCart/Update Cart EntryRest Methods: POST & PUT
URL Parameter – Add Product to Cart & Update Cart entryBoth Path /magnoliaws/restBoth Type cartBoth sessionId 7501A230F4E215E26F1903B0CDC4D9DDBoth Operation addtocart / updatecartentryBoth Product
code23355
Both quantity 1 / -1Update Catalog electronicsProductCatalogUpdate Version Online
THANKS FOR YOUR ATTENTION!
QUESTIONS & ANSWERS