SlideShare a Scribd company logo
1 of 39
Download to read offline
USE CASES AND TECHNOLOGIES FOR
INTEGRATING MAGNOLIA WITH
ALFRESCO
Credit: Christmas Lights by Abhishek Shirali
Some Rights Reserved CC-BY 2.0
https://www.flickr.com/photos/abhishekshirali/11397502823
AXEL FAUST
PRODYNA AG
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 processes
o Compliant records management
o Open ECM for on-premise, cloud and mobile
Subject Expert Group
Marketing
COLLABORATION
Repository
(on-premise)
Enterprise Sync
Hybrid Workflow
External
Agency
Cloud Media
Services
Cloud API
B2B / CLOUDON-PREMISE
Authors
Publisher
Direct
Access
SME
Marketing
External
Agency
Authors
Publisher
Direct
Access
SME
Marketing
External
Agency
Create draft video
Create storyboard
Fill with subject detail
and sketch
Submit for „overhaul“
Review draft
Submit for
review / inclusion
Asset collaboration
Authors
Publisher
Direct
Access
SME
Marketing
External
Agency
Submission / Cherry-picking
Browse & Import
Create synchronization
Ask / submit for inclusion
Review & feedback
OR
Import
alternatively
RELEVANT APIS
REST(-like)
Generic domain model / API
Different protocol bindings
URL discovery
Focus on file/folder (+ item)
Formal type mechanism
Existing full-featured libraries
Proprietary API
Typically JSON-based
REST: focus on resources
REST-like: anything
(just make sure it‘s JSON)
CMIS ISSUES
„Everyone integrate with ME!“ syndrome
CMIS „transition phase“ – Magnolia 4.x – 5.x
Some key DMS concepts not yet supported
REST ISSUES
Majority of exposed API is „internal“
Discoverability of parameters / conditions
Identifiers typically non-universal / non-uniform
HYBRID
INTEGRATION
CONCEPT
Best of both worlds
CMIS core + ReST add-ons to “flesh out”
Both platforms = active participants
Reusable / adaptable
Generic CMIS services / API
Pluggable actions, authentication, metadata mapping…
DEMO
CMIS CORE
MODULE STRUCTURE
CMIS
COMMON
CMIS
CLIENT
CMIS
MAPPING
CMIS
BROWSER APP
CMIS
CHEMISTRY
CLIENT
MODULE STRUCTURE
CMIS
COMMON
CMIS
CLIENT
CMIS
MAPPING
CMIS
BROWSER APP
CMIS
CHEMISTRY
CLIENT
provides
serivces
implements
data types
Server configuration (JCR)
Connector configuration (JCR)
Logic configuration (JCR)
„Standard“ content app
SERVICE ABSTRACTION
Service
Manager
Service
Factory
Service
Service
FactoryImpl
Service
Impl
Session
Aspect
produces
produces
retrieve service
Apache Chemistry
OpenCMIS provider
API
SESSION ASPECT?
CMIS session setup
Host and binding
Authentication
Cache, proxy, compression…
EXAMPLE ASPECT
External authentication (Alfresco)
Magnolia trusted to authenticate user
ReST setup call to obtain “user ticket”
Verification “Magnolia as client” + user exists
User ticket => CMIS “password”
CONFIGURATION
CONFIGURATION
METAMODEL
MAPPING
MAPPING ELEMENTS
Mapping
Rule
Mapping
Service
Mapping
Manager
Applicability
Definition
Composite
Rule
XY
Rule
MAPPING ELEMENTS
Mapping
Service
Mapping
Manager
Context
• direction
• CMIS: identifier / parentIdentifier
• JCR: identifier / parentIdentifier
+ path / parentPath
• JCR workspace
• contextData (arbitrary)
Result
• Primary / secondary type(s)
• Mapped properties (key-value)
• Binary stream
• Property / type removals
• Mapped children
Mapping
Rule
Applicability
Definition
Composite
Rule
XY
Rule
CONFIGURATION
REST INTERACTION
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)
BASIC FRAMEWORK
Primarily Magnolia
Abstract service facades
JAX-RS / ReSTEasy client
Commands vs. actions / „remote forms“
MODULES
CMIS
CLIENT
CMIS
MAPPING
CMIS
BROWSER APP
CMIS
CHEMISTRY
CLIENT
CMIS
COMMON
MODULES
CMIS
CLIENT
CMIS
MAPPING
CMIS
BROWSER APP
CMIS
CHEMISTRY
CLIENT
ALFRESCO
CORE
ALFRESCO
UI
ALFRESCO
CHEMISTRY
CMIS
COMMON
REMOTE FORM ACTION
Action X
REMOTE FORM ACTION
Action X
1) Instantiate
with form / item ID
(ALF) Form
Definition
REMOTE FORM ACTION
Action X
1) Instantiate
with form / item ID
(ALF) Form
Definition
(MGNL) Form
Definition
Item
2) Build
3) Mix-in cust.
fields
REMOTE FORM ACTION
Action X
1) Instantiate
with form / item ID
(ALF) Form
Definition
Item
2) Build
3) Mix-in cust.
fields
(MGNL) Form
Definition
FormData
4) SubmitEditor
Callback
CONCLUSIONS &
FINAL REMARKS
CONCLUSIONS
Highest „effort per progress“ in Magnolia UI
(#1: replacing JCR dependancies)
Wanted #1: CMIS module update (5.x)
Wanted #2: Command parameter exposure
Improbable: full identifier decoupling
FINAL REMARKS
Magnolia 5.2.2 / Alfresco 4.0+ (minor fix req.)
Plan: basic modules => Community
• CMIS browser + client services
• Simple submission / collaboration process
Thanks for your attention!
QUESTIONS &
ANSWERS

More Related Content

Similar to Use Cases and Technologies for Integrating Magnolia with Alfresco

Similar to Use Cases and Technologies for Integrating Magnolia with Alfresco (20)

[Hands-on] CQRS(Command Query Responsibility Segregation) 와 Event Sourcing 패턴 실습
[Hands-on] CQRS(Command Query Responsibility Segregation) 와 Event Sourcing 패턴 실습[Hands-on] CQRS(Command Query Responsibility Segregation) 와 Event Sourcing 패턴 실습
[Hands-on] CQRS(Command Query Responsibility Segregation) 와 Event Sourcing 패턴 실습
 
CQRS and Event Sourcing
CQRS and Event Sourcing CQRS and Event Sourcing
CQRS and Event Sourcing
 
GIB2020 - Building Event-Driven Integration Architectures
GIB2020 - Building Event-Driven Integration ArchitecturesGIB2020 - Building Event-Driven Integration Architectures
GIB2020 - Building Event-Driven Integration Architectures
 
XebiCon'17 : AxonFramework @ SGCIB (our experience) : (CQRS, Eventsourcing, A...
XebiCon'17 : AxonFramework @ SGCIB (our experience) : (CQRS, Eventsourcing, A...XebiCon'17 : AxonFramework @ SGCIB (our experience) : (CQRS, Eventsourcing, A...
XebiCon'17 : AxonFramework @ SGCIB (our experience) : (CQRS, Eventsourcing, A...
 
Building microservices with Scala, functional domain models and Spring Boot (...
Building microservices with Scala, functional domain models and Spring Boot (...Building microservices with Scala, functional domain models and Spring Boot (...
Building microservices with Scala, functional domain models and Spring Boot (...
 
An introduction to Microsoft Graph for developers
An introduction to Microsoft Graph for developersAn introduction to Microsoft Graph for developers
An introduction to Microsoft Graph for developers
 
James Turner (Caplin) - Enterprise HTML5 Patterns
James Turner (Caplin) - Enterprise HTML5 PatternsJames Turner (Caplin) - Enterprise HTML5 Patterns
James Turner (Caplin) - Enterprise HTML5 Patterns
 
Building Event-Driven Integration Architectures with Azure Event Grid (GIB2019)
Building Event-Driven Integration Architectures with Azure Event Grid (GIB2019)Building Event-Driven Integration Architectures with Azure Event Grid (GIB2019)
Building Event-Driven Integration Architectures with Azure Event Grid (GIB2019)
 
Cloud native architeturecture
Cloud native architeturecture Cloud native architeturecture
Cloud native architeturecture
 
How to use hybrid cloud to migrate and deploy unified business applications i...
How to use hybrid cloud to migrate and deploy unified business applications i...How to use hybrid cloud to migrate and deploy unified business applications i...
How to use hybrid cloud to migrate and deploy unified business applications i...
 
Cloud to hybrid edge cloud evolution Jun112020.pptx
Cloud to hybrid edge cloud evolution Jun112020.pptxCloud to hybrid edge cloud evolution Jun112020.pptx
Cloud to hybrid edge cloud evolution Jun112020.pptx
 
Sitecore Engagement Cloud Overview - SUGUK.pptx
Sitecore Engagement Cloud Overview - SUGUK.pptxSitecore Engagement Cloud Overview - SUGUK.pptx
Sitecore Engagement Cloud Overview - SUGUK.pptx
 
How Can I Build a Landing Zone & Extend my Operations into AWS to Support my ...
How Can I Build a Landing Zone & Extend my Operations into AWS to Support my ...How Can I Build a Landing Zone & Extend my Operations into AWS to Support my ...
How Can I Build a Landing Zone & Extend my Operations into AWS to Support my ...
 
성공적인 서비스로의 플랫폼 선택
성공적인 서비스로의 플랫폼 선택성공적인 서비스로의 플랫폼 선택
성공적인 서비스로의 플랫폼 선택
 
Large scale data capture and experimentation platform at Grab
Large scale data capture and experimentation platform at GrabLarge scale data capture and experimentation platform at Grab
Large scale data capture and experimentation platform at Grab
 
D cast ostrato 1 29-2014.ppt
D cast ostrato 1 29-2014.pptD cast ostrato 1 29-2014.ppt
D cast ostrato 1 29-2014.ppt
 
Salesforce CRM Administration and Developer Training
Salesforce CRM Administration and Developer TrainingSalesforce CRM Administration and Developer Training
Salesforce CRM Administration and Developer Training
 
Developing functional domain models with event sourcing (sbtb, sbtb2015)
Developing functional domain models with event sourcing (sbtb, sbtb2015)Developing functional domain models with event sourcing (sbtb, sbtb2015)
Developing functional domain models with event sourcing (sbtb, sbtb2015)
 
Salesforce Advanced Administrator and Advanced Developer Training
Salesforce Advanced Administrator and Advanced Developer TrainingSalesforce Advanced Administrator and Advanced Developer Training
Salesforce Advanced Administrator and Advanced Developer Training
 
MongoDB.local Atlanta: Introduction to Serverless MongoDB
MongoDB.local Atlanta: Introduction to Serverless MongoDBMongoDB.local Atlanta: Introduction to Serverless MongoDB
MongoDB.local Atlanta: Introduction to Serverless MongoDB
 

More from Magnolia

More from Magnolia (20)

The SEO Workflow
The SEO WorkflowThe SEO Workflow
The SEO Workflow
 
Magnolia 6 release walkthrough
Magnolia 6 release walkthroughMagnolia 6 release walkthrough
Magnolia 6 release walkthrough
 
Buzzword bingo: The real deal behind omnichannel, personalization and headless
Buzzword bingo: The real deal behind  omnichannel, personalization and headlessBuzzword bingo: The real deal behind  omnichannel, personalization and headless
Buzzword bingo: The real deal behind omnichannel, personalization and headless
 
Developing Magnolia based sites correctly, quickly and efficiently
Developing Magnolia based sites correctly, quickly and efficientlyDeveloping Magnolia based sites correctly, quickly and efficiently
Developing Magnolia based sites correctly, quickly and efficiently
 
Integrating e-Commerce into your Customer Experience
Integrating e-Commerce into your Customer ExperienceIntegrating e-Commerce into your Customer Experience
Integrating e-Commerce into your Customer Experience
 
Customer Engagement in the Digital Era
Customer Engagement in the Digital EraCustomer Engagement in the Digital Era
Customer Engagement in the Digital Era
 
The Age of the IOT & Digital Business
The Age of the IOT & Digital BusinessThe Age of the IOT & Digital Business
The Age of the IOT & Digital Business
 
Using Magnolia in a Microservices Architecture
Using Magnolia in a Microservices ArchitectureUsing Magnolia in a Microservices Architecture
Using Magnolia in a Microservices Architecture
 
A modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at AtlassianA modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at Atlassian
 
Magnolia Conference 2015 - Pascal Mangold's keynote
Magnolia Conference 2015 - Pascal Mangold's keynoteMagnolia Conference 2015 - Pascal Mangold's keynote
Magnolia Conference 2015 - Pascal Mangold's keynote
 
Product keynote - introducing Magnolia 5.4
Product keynote - introducing Magnolia 5.4Product keynote - introducing Magnolia 5.4
Product keynote - introducing Magnolia 5.4
 
Launching Magnolia on demand
Launching Magnolia on demandLaunching Magnolia on demand
Launching Magnolia on demand
 
Front-end developers - build Magnolia sites faster
Front-end developers - build Magnolia sites fasterFront-end developers - build Magnolia sites faster
Front-end developers - build Magnolia sites faster
 
Magnolia and beacons: how do they work best together?
Magnolia and beacons: how do they work best together?Magnolia and beacons: how do they work best together?
Magnolia and beacons: how do they work best together?
 
Magnolia and the IOT
Magnolia and the IOTMagnolia and the IOT
Magnolia and the IOT
 
Internationalization for globalized enterprise websites
Internationalization for globalized enterprise websitesInternationalization for globalized enterprise websites
Internationalization for globalized enterprise websites
 
The new visana website how to fit a square peg into a round hole
The new visana website   how to fit a square peg into a round holeThe new visana website   how to fit a square peg into a round hole
The new visana website how to fit a square peg into a round hole
 
Solving for complex UI designs: a front-end perspective and approach
Solving for complex UI designs: a front-end perspective and approachSolving for complex UI designs: a front-end perspective and approach
Solving for complex UI designs: a front-end perspective and approach
 
Extending Magnolia with our solutions
Extending Magnolia with our solutionsExtending Magnolia with our solutions
Extending Magnolia with our solutions
 
Boost your online e commerce with magnolia
Boost your online e commerce with magnoliaBoost your online e commerce with magnolia
Boost your online e commerce with magnolia
 

Recently uploaded

introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

Recently uploaded (20)

8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 

Use Cases and Technologies for Integrating Magnolia with Alfresco