SlideShare a Scribd company logo
follow the Hippo trail
1
CreateDigitalMiracles
follow the Hippo trail
1
Create Digital Miracles
ae@nuxeo.com @aescaffre
Integrating the Nuxeo Content
Management Platform with java
or javascript application
Friday 2013 June 21st, Amsterdam–Hippo GetTogether
Alain Escaffre, Nuxeo Presales and Products director
follow the Hippo trail
2
CreateDigitalMiracles
follow the Hippo trail
2
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo : ECM platform
• Nuxeo Platform is a full stack software platform for building
content-centric business applications
• Designed for software developers, architects and business
managers who create software for internal use or for customers
• A foundation for business applications in the areas of content
management, document management, digital asset management,
and case management
• Trusted by large organizations for mission-critical applications
• Nuxeo Platform is created as open source software
follow the Hippo trail
3
CreateDigitalMiracles
follow the Hippo trail
3
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo : the company
• Nuxeo supports customers in creating, building, maintaining,
deploying and operating apps
• Nuxeo covers the full lifecycle of applications:
• Application Designer: Nuxeo Studio
• Development Environment: Nuxeo IDE (Eclipse), Maven Tooling
• Testing Toolset: Unit, Functional (Sl/WebDriver), Performance
• Deployment tools: Nuxeo Marketplace, Update Center
• We focus on the complete experience for our customers, not just
the software you run
• We are based in France, New York and California.
follow the Hippo trail
4
CreateDigitalMiracles
follow the Hippo trail
4
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo – Hippo, a very good fit !
follow the Hippo trail
5
CreateDigitalMiracles
follow the Hippo trail
5
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo – Hippo, a very good fit !
follow the Hippo trail
6
CreateDigitalMiracles
follow the Hippo trail
6
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo – Hippo, a very good fit !
• JAVA based
• Maven
• Freemarker
• Plugins
architecture
• …
follow the Hippo trail
7
CreateDigitalMiracles
follow the Hippo trail
7
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo – Hippo, a very good fit !
follow the Hippo trail
8
CreateDigitalMiracles
follow the Hippo trail
8
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo and Hippo GetTogether ?
Hippo: Frontal
Web Experience
Online
Marketing
Nuxeo: back office :
• Document Management
• Case Management
• Digital Asset Management
Customers
Prospects
Employees
HR Sales Accounting Marketing
follow the Hippo trail
9
CreateDigitalMiracles
follow the Hippo trail
9
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo and Hippo GetTogether ?
follow the Hippo trail
10
CreateDigitalMiracles
follow the Hippo trail
10
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo and Hippo GetTogether ?
follow the Hippo trail
11
CreateDigitalMiracles
follow the Hippo trail
11
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo and Hippo GetTogether ?
follow the Hippo trail
12
CreateDigitalMiracles
follow the Hippo trail
12
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo and Hippo GetTogether ?
follow the Hippo trail
13
CreateDigitalMiracles
follow the Hippo trail
13
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo – Hippo Integration options
• CMIS
• Open Social
• Custom java development
follow the Hippo trail
14
CreateDigitalMiracles
follow the Hippo trail
14
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo – Hippo using CMS
follow the Hippo trail
15
CreateDigitalMiracles
follow the Hippo trail
15
Create Digital Miracles
ae@nuxeo.com @aescaffre
Nuxeo remote API: Automation
Ordered set of operations
Used in:
• User Actions
• Events
• REST Calls
• Workflows
follow the Hippo trail
16
CreateDigitalMiracles
follow the Hippo trail
16
Create Digital Miracles
ae@nuxeo.com @aescaffre
Operation
An Operation Has:
• Unique name
• Input
• Ouput
• Parameters
follow the Hippo trail
17
CreateDigitalMiracles
follow the Hippo trail
17
Create Digital Miracles
ae@nuxeo.com @aescaffre
Some existing use of Automation client
in the CMS/Portal world
• Queries
• Form creation
• Content listing and search
screens
 For managing workflows,
training scheduling, training
requests, etc ….
follow the Hippo trail
18
CreateDigitalMiracles
follow the Hippo trail
18
Create Digital Miracles
ae@nuxeo.com @aescaffre
A custom operation ? One java class !
@Operation(id = CreateDocument.ID, category = Constants.CAT_DOCUMENT, label = "Create",
description = "Create a new document in the input folder ...")
public class CreateDocument {
public final static String ID = "Document.Create";
@Context
protected CoreSession session;
@Param(name = "type")
protected String type;
@Param(name = "name", required = false)
protected String name;
@Param(name = "properties", required = false)
protected Properties content;
@OperationMethod
public DocumentModel run(DocumentModel doc) throws Exception {
if (name == null) {
name = "Untitled";
}
DocumentModel newDoc = session.createDocumentModel(
doc.getPathAsString(), name, type);
if (content != null) {
DocumentHelper.setProperties(session, newDoc, content);
}
return session.createDocument(newDoc);
}
}
follow the Hippo trail
19
CreateDigitalMiracles
follow the Hippo trail
19
Create Digital Miracles
ae@nuxeo.com @aescaffre
Exemple of an operation
- Input: Documents, Document
- Output: Documents, Document
- Parameter: The name of the
transition to follow
- Process:
Follows the transition in
parameter to the input
document
Returns the modified
document, which can be
used in the next operation
Example: “Follow Life Cycle Transition”
follow the Hippo trail
20
CreateDigitalMiracles
follow the Hippo trail
20
Create Digital Miracles
ae@nuxeo.com @aescaffre
Automation Client
- Easy to include
- Doesn’t require to be too
much of a geek !
import org.nuxeo.ecm.automation.client.model.documents;
import org.nuxeo.ecm.automation.client.Session;
public static void main(String[] args) throws Exception {
HttpAutomationClient client = new HttpAutomationClient(
"http://localhost:8080/nuxeo/site/automation");
Session session = client.getSession("Administrator", "Administrator");
Documents docs = (Documents) session.newRequest("Document.Query").set(
"query", "SELECT * FROM Document").execute();
System.out.println(docs);
client.shutdown();
}
follow the Hippo trail
21
CreateDigitalMiracles
follow the Hippo trail
21
Create Digital Miracles
ae@nuxeo.com @aescaffre
What to find in Nuxeo platform
• Fully featured repository (complex metadata management,
versionning, proxies, mixin, …)
• Advanced workflow engine
• Conversions services (pdf, videos, images, …)
• Search and query engine
• Audit service
• Higher level services: comments, activity, ....
• Media management services
follow the Hippo trail
22
CreateDigitalMiracles
follow the Hippo trail
22
Create Digital Miracles
ae@nuxeo.com @aescaffre
Question & Answers
Thank you so much for your time.
Let’s stay in touch.
@aescaffre
www.nuxeo.com

More Related Content

Similar to Integrating the Nuxeo Content Management Platform with Hippo

Use open source software to develop ideas at work
Use open source software to develop ideas at workUse open source software to develop ideas at work
Use open source software to develop ideas at work
Sammy Fung
 
Data science apps powered by Jupyter Notebooks
Data science apps powered by Jupyter NotebooksData science apps powered by Jupyter Notebooks
Data science apps powered by Jupyter Notebooks
Natalino Busa
 
DocDokuPLM: Domain Specific PaaS and Business Oriented API
DocDokuPLM: Domain Specific PaaS and Business Oriented APIDocDokuPLM: Domain Specific PaaS and Business Oriented API
DocDokuPLM: Domain Specific PaaS and Business Oriented API
DocDoku
 
DocDokuPLM : Domain Specific PaaS and Business Oriented API, OW2con'16, Paris.
DocDokuPLM : Domain Specific PaaS and Business Oriented API, OW2con'16, Paris. DocDokuPLM : Domain Specific PaaS and Business Oriented API, OW2con'16, Paris.
DocDokuPLM : Domain Specific PaaS and Business Oriented API, OW2con'16, Paris.
OW2
 
Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016
Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016
Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016
Eric Descargues
 
Building Modern Data Pipelines on GCP via a FREE online Bootcamp
Building Modern Data Pipelines on GCP via a FREE online BootcampBuilding Modern Data Pipelines on GCP via a FREE online Bootcamp
Building Modern Data Pipelines on GCP via a FREE online Bootcamp
Data Con LA
 
Drupal 8 and iOS - an Open Source App
Drupal 8 and iOS - an Open Source AppDrupal 8 and iOS - an Open Source App
Drupal 8 and iOS - an Open Source App
littleMAS
 
Drupal 8: A story of growing up and getting off the island
Drupal 8: A story of growing up and getting off the islandDrupal 8: A story of growing up and getting off the island
Drupal 8: A story of growing up and getting off the island
Angela Byron
 
Hippo nuxeo world
Hippo nuxeo worldHippo nuxeo world
Hippo nuxeo worldserraalink
 
Always on! Or not?
Always on! Or not?Always on! Or not?
Always on! Or not?
Carsten Sandtner
 
История одного успешного ".NET" проекта, Александр Сугак
История одного успешного ".NET" проекта, Александр СугакИстория одного успешного ".NET" проекта, Александр Сугак
История одного успешного ".NET" проекта, Александр Сугак
Sigma Software
 
Buildingsocialanalyticstoolwithmongodb
BuildingsocialanalyticstoolwithmongodbBuildingsocialanalyticstoolwithmongodb
BuildingsocialanalyticstoolwithmongodbMongoDB APAC
 
Scaling ML-Based Threat Detection For Production Cyber Attacks
Scaling ML-Based Threat Detection For Production Cyber AttacksScaling ML-Based Threat Detection For Production Cyber Attacks
Scaling ML-Based Threat Detection For Production Cyber Attacks
Databricks
 
Connecting the Dots: Integrating Apache Spark into Production Pipelines
Connecting the Dots: Integrating Apache Spark into Production PipelinesConnecting the Dots: Integrating Apache Spark into Production Pipelines
Connecting the Dots: Integrating Apache Spark into Production Pipelines
Databricks
 
Offline strategies for HTML5 web applications - frOSCon8
Offline strategies for HTML5 web applications - frOSCon8Offline strategies for HTML5 web applications - frOSCon8
Offline strategies for HTML5 web applications - frOSCon8Stephan Hochdörfer
 
Metaflow: The ML Infrastructure at Netflix
Metaflow: The ML Infrastructure at NetflixMetaflow: The ML Infrastructure at Netflix
Metaflow: The ML Infrastructure at Netflix
Bill Liu
 
APIs for the Internet of Things
APIs for the Internet of ThingsAPIs for the Internet of Things
APIs for the Internet of Things
Kinoma
 
Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9
Mediacurrent
 
Writing plugins for Nagios and Opsview - CAPSiDE Tech Talks
Writing plugins for Nagios and Opsview - CAPSiDE Tech TalksWriting plugins for Nagios and Opsview - CAPSiDE Tech Talks
Writing plugins for Nagios and Opsview - CAPSiDE Tech Talks
Jose Luis Martínez
 
Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9
Acquia
 

Similar to Integrating the Nuxeo Content Management Platform with Hippo (20)

Use open source software to develop ideas at work
Use open source software to develop ideas at workUse open source software to develop ideas at work
Use open source software to develop ideas at work
 
Data science apps powered by Jupyter Notebooks
Data science apps powered by Jupyter NotebooksData science apps powered by Jupyter Notebooks
Data science apps powered by Jupyter Notebooks
 
DocDokuPLM: Domain Specific PaaS and Business Oriented API
DocDokuPLM: Domain Specific PaaS and Business Oriented APIDocDokuPLM: Domain Specific PaaS and Business Oriented API
DocDokuPLM: Domain Specific PaaS and Business Oriented API
 
DocDokuPLM : Domain Specific PaaS and Business Oriented API, OW2con'16, Paris.
DocDokuPLM : Domain Specific PaaS and Business Oriented API, OW2con'16, Paris. DocDokuPLM : Domain Specific PaaS and Business Oriented API, OW2con'16, Paris.
DocDokuPLM : Domain Specific PaaS and Business Oriented API, OW2con'16, Paris.
 
Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016
Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016
Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016
 
Building Modern Data Pipelines on GCP via a FREE online Bootcamp
Building Modern Data Pipelines on GCP via a FREE online BootcampBuilding Modern Data Pipelines on GCP via a FREE online Bootcamp
Building Modern Data Pipelines on GCP via a FREE online Bootcamp
 
Drupal 8 and iOS - an Open Source App
Drupal 8 and iOS - an Open Source AppDrupal 8 and iOS - an Open Source App
Drupal 8 and iOS - an Open Source App
 
Drupal 8: A story of growing up and getting off the island
Drupal 8: A story of growing up and getting off the islandDrupal 8: A story of growing up and getting off the island
Drupal 8: A story of growing up and getting off the island
 
Hippo nuxeo world
Hippo nuxeo worldHippo nuxeo world
Hippo nuxeo world
 
Always on! Or not?
Always on! Or not?Always on! Or not?
Always on! Or not?
 
История одного успешного ".NET" проекта, Александр Сугак
История одного успешного ".NET" проекта, Александр СугакИстория одного успешного ".NET" проекта, Александр Сугак
История одного успешного ".NET" проекта, Александр Сугак
 
Buildingsocialanalyticstoolwithmongodb
BuildingsocialanalyticstoolwithmongodbBuildingsocialanalyticstoolwithmongodb
Buildingsocialanalyticstoolwithmongodb
 
Scaling ML-Based Threat Detection For Production Cyber Attacks
Scaling ML-Based Threat Detection For Production Cyber AttacksScaling ML-Based Threat Detection For Production Cyber Attacks
Scaling ML-Based Threat Detection For Production Cyber Attacks
 
Connecting the Dots: Integrating Apache Spark into Production Pipelines
Connecting the Dots: Integrating Apache Spark into Production PipelinesConnecting the Dots: Integrating Apache Spark into Production Pipelines
Connecting the Dots: Integrating Apache Spark into Production Pipelines
 
Offline strategies for HTML5 web applications - frOSCon8
Offline strategies for HTML5 web applications - frOSCon8Offline strategies for HTML5 web applications - frOSCon8
Offline strategies for HTML5 web applications - frOSCon8
 
Metaflow: The ML Infrastructure at Netflix
Metaflow: The ML Infrastructure at NetflixMetaflow: The ML Infrastructure at Netflix
Metaflow: The ML Infrastructure at Netflix
 
APIs for the Internet of Things
APIs for the Internet of ThingsAPIs for the Internet of Things
APIs for the Internet of Things
 
Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9
 
Writing plugins for Nagios and Opsview - CAPSiDE Tech Talks
Writing plugins for Nagios and Opsview - CAPSiDE Tech TalksWriting plugins for Nagios and Opsview - CAPSiDE Tech Talks
Writing plugins for Nagios and Opsview - CAPSiDE Tech Talks
 
Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9
 

Recently uploaded

Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
Vlad Stirbu
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 

Recently uploaded (20)

Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 

Integrating the Nuxeo Content Management Platform with Hippo

  • 1. follow the Hippo trail 1 CreateDigitalMiracles follow the Hippo trail 1 Create Digital Miracles ae@nuxeo.com @aescaffre Integrating the Nuxeo Content Management Platform with java or javascript application Friday 2013 June 21st, Amsterdam–Hippo GetTogether Alain Escaffre, Nuxeo Presales and Products director
  • 2. follow the Hippo trail 2 CreateDigitalMiracles follow the Hippo trail 2 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo : ECM platform • Nuxeo Platform is a full stack software platform for building content-centric business applications • Designed for software developers, architects and business managers who create software for internal use or for customers • A foundation for business applications in the areas of content management, document management, digital asset management, and case management • Trusted by large organizations for mission-critical applications • Nuxeo Platform is created as open source software
  • 3. follow the Hippo trail 3 CreateDigitalMiracles follow the Hippo trail 3 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo : the company • Nuxeo supports customers in creating, building, maintaining, deploying and operating apps • Nuxeo covers the full lifecycle of applications: • Application Designer: Nuxeo Studio • Development Environment: Nuxeo IDE (Eclipse), Maven Tooling • Testing Toolset: Unit, Functional (Sl/WebDriver), Performance • Deployment tools: Nuxeo Marketplace, Update Center • We focus on the complete experience for our customers, not just the software you run • We are based in France, New York and California.
  • 4. follow the Hippo trail 4 CreateDigitalMiracles follow the Hippo trail 4 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo – Hippo, a very good fit !
  • 5. follow the Hippo trail 5 CreateDigitalMiracles follow the Hippo trail 5 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo – Hippo, a very good fit !
  • 6. follow the Hippo trail 6 CreateDigitalMiracles follow the Hippo trail 6 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo – Hippo, a very good fit ! • JAVA based • Maven • Freemarker • Plugins architecture • …
  • 7. follow the Hippo trail 7 CreateDigitalMiracles follow the Hippo trail 7 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo – Hippo, a very good fit !
  • 8. follow the Hippo trail 8 CreateDigitalMiracles follow the Hippo trail 8 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo and Hippo GetTogether ? Hippo: Frontal Web Experience Online Marketing Nuxeo: back office : • Document Management • Case Management • Digital Asset Management Customers Prospects Employees HR Sales Accounting Marketing
  • 9. follow the Hippo trail 9 CreateDigitalMiracles follow the Hippo trail 9 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo and Hippo GetTogether ?
  • 10. follow the Hippo trail 10 CreateDigitalMiracles follow the Hippo trail 10 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo and Hippo GetTogether ?
  • 11. follow the Hippo trail 11 CreateDigitalMiracles follow the Hippo trail 11 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo and Hippo GetTogether ?
  • 12. follow the Hippo trail 12 CreateDigitalMiracles follow the Hippo trail 12 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo and Hippo GetTogether ?
  • 13. follow the Hippo trail 13 CreateDigitalMiracles follow the Hippo trail 13 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo – Hippo Integration options • CMIS • Open Social • Custom java development
  • 14. follow the Hippo trail 14 CreateDigitalMiracles follow the Hippo trail 14 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo – Hippo using CMS
  • 15. follow the Hippo trail 15 CreateDigitalMiracles follow the Hippo trail 15 Create Digital Miracles ae@nuxeo.com @aescaffre Nuxeo remote API: Automation Ordered set of operations Used in: • User Actions • Events • REST Calls • Workflows
  • 16. follow the Hippo trail 16 CreateDigitalMiracles follow the Hippo trail 16 Create Digital Miracles ae@nuxeo.com @aescaffre Operation An Operation Has: • Unique name • Input • Ouput • Parameters
  • 17. follow the Hippo trail 17 CreateDigitalMiracles follow the Hippo trail 17 Create Digital Miracles ae@nuxeo.com @aescaffre Some existing use of Automation client in the CMS/Portal world • Queries • Form creation • Content listing and search screens  For managing workflows, training scheduling, training requests, etc ….
  • 18. follow the Hippo trail 18 CreateDigitalMiracles follow the Hippo trail 18 Create Digital Miracles ae@nuxeo.com @aescaffre A custom operation ? One java class ! @Operation(id = CreateDocument.ID, category = Constants.CAT_DOCUMENT, label = "Create", description = "Create a new document in the input folder ...") public class CreateDocument { public final static String ID = "Document.Create"; @Context protected CoreSession session; @Param(name = "type") protected String type; @Param(name = "name", required = false) protected String name; @Param(name = "properties", required = false) protected Properties content; @OperationMethod public DocumentModel run(DocumentModel doc) throws Exception { if (name == null) { name = "Untitled"; } DocumentModel newDoc = session.createDocumentModel( doc.getPathAsString(), name, type); if (content != null) { DocumentHelper.setProperties(session, newDoc, content); } return session.createDocument(newDoc); } }
  • 19. follow the Hippo trail 19 CreateDigitalMiracles follow the Hippo trail 19 Create Digital Miracles ae@nuxeo.com @aescaffre Exemple of an operation - Input: Documents, Document - Output: Documents, Document - Parameter: The name of the transition to follow - Process: Follows the transition in parameter to the input document Returns the modified document, which can be used in the next operation Example: “Follow Life Cycle Transition”
  • 20. follow the Hippo trail 20 CreateDigitalMiracles follow the Hippo trail 20 Create Digital Miracles ae@nuxeo.com @aescaffre Automation Client - Easy to include - Doesn’t require to be too much of a geek ! import org.nuxeo.ecm.automation.client.model.documents; import org.nuxeo.ecm.automation.client.Session; public static void main(String[] args) throws Exception { HttpAutomationClient client = new HttpAutomationClient( "http://localhost:8080/nuxeo/site/automation"); Session session = client.getSession("Administrator", "Administrator"); Documents docs = (Documents) session.newRequest("Document.Query").set( "query", "SELECT * FROM Document").execute(); System.out.println(docs); client.shutdown(); }
  • 21. follow the Hippo trail 21 CreateDigitalMiracles follow the Hippo trail 21 Create Digital Miracles ae@nuxeo.com @aescaffre What to find in Nuxeo platform • Fully featured repository (complex metadata management, versionning, proxies, mixin, …) • Advanced workflow engine • Conversions services (pdf, videos, images, …) • Search and query engine • Audit service • Higher level services: comments, activity, .... • Media management services
  • 22. follow the Hippo trail 22 CreateDigitalMiracles follow the Hippo trail 22 Create Digital Miracles ae@nuxeo.com @aescaffre Question & Answers Thank you so much for your time. Let’s stay in touch. @aescaffre www.nuxeo.com