Download presentation
Presentation is loading. Please wait.
1
Getting Started with Alfresco Development
Ray Gauss II – DAM Alfresco (Originally Gethin James - Senior Software Alfresco)
2
Agenda Architecture Overview Alfresco One Extensions
Alfresco One RESTful API Using it Adding to it (Yes, YOU can) Ask about capabilities of devs in the room
3
What’s Covered Elsewhere
Sessions Share Widget Library Share Page Creation Live
4
Alfresco Architecture
Need to understand at a high level Don’t re-invent wheels Check docs for latest recommended extension points Use consulting or partner services if you can
5
Alfresco Basic Concepts
Nodes NodeRefs Properties ContentStore
6
Before Development… Config
alfresco-global.properties Database Credentials Ports Limits (Timeouts, Size) Executable Paths JMX These are consolidated from several places, i.e. modules
7
New in 4.2 – Admin console Some of the same things Enterprise-only feature
8
Your Architecture Extending Alfresco? Talking to Alfresco? AMPs
REST API
9
Extending Alfresco Alfresco Module Package (AMP)
Way to Package JARs, config, web resources Module Versioned Specify Alfresco Version Requirements Module Dependencies Installed by Module Management Tool (MMT) Repository or Share Enables just about any customization: data model, services, UI Encourages a repeatable build More likely upgrade safe Admin console shows modules installed
10
Getting Started With AMPs
Alfresco Maven SDK Maven Archetypes to Generate AMP Structure Maven Plugin to Package, Deploy Official Documentation Session: Enabling … Dev … of Alfresco Apps (Gabriele Columbro) Who’s familiar with Maven?
11
Alfresco Maven Artifacts
artifacts.alfresco.com Use the ____, Luke Source Javadoc Tests Config No need to check out full source Story of unzipping SDK pieces © Lucasfilm
12
Who Likes Choices? Webscripts Server-side JavaScript
IMAP, FTP, SharePoint protocol, CIFS
13
New in 4.2 for Devs Hybrid Workflow Easy Clustering
Transformer Configs Transactional Queries
14
New in 4.2 – Database Queries
In-transaction metadata query “A subset of CMIS queries may be automatically executed against the database if they do not contain OR, CONTAINS(), SCORE() or IN_TREE(); nor refer to decimal, boolean or URI CMIS data types.” ALF-19126 Summit: Querying for Metadata, Andy Hind Eventually Consistent
15
Your Architecture Extending Alfresco? Talking to Alfresco? AMPs
REST API
16
Photo Slide Folder, file, content and metadata manipulation and search
sites, people, comments, tags, favorites, workflow JSON Who’s familiar with CMIS? API was Cloud first – now in 4.2 Image title
17
CMIS Sessions Getting Started with CMIS, Jeff Potts What's Coming in CMIS 1.1, Greg Melahn Book: CMIS & Apache Chemistry in Action by Florian Müller, Jay Brown, and Jeff Potts Apache Chemistry Project
18
Public API - Consistency
Structure: URLs, HTTP Methods, Response Format – List, Pagination, Entry Common Error Handling & Responses Querying: Paging, Filtering, Where, orderBy Cloud and Enterprise 4.2
19
API URLs
20
API URLs Network Id API Namespace Entity mycompany.com alfresco or workflow people tags networks
21
API URLs /public/alfresco/versions/1/sites Scope Version UniqueId UniqueId public/alfresco/versions/1/sites /{siteId}/members/{memberid} API Namespace Entity Relationship
22
Public API – Using it /nodes/{entityId}/tags /nodes/{entityId}/ratings /nodes/{entityId}/comments /sites /sites/{entityId} /sites/{entityId}/containers /sites/{entityId}/members /people/{entityId}/favorites /people/{entityId}/networks /people/{entityId}/sites /people/{entityId}/sites/<siteId> /people/{entityId}/preferences /people/{entityId}/activities /people/{entityId}/site-membership-requests /tags /networks/{entityId}
23
Public API Documentation
Getting Started API Reference
24
Public API – Demo Summary
Consistent API Across Cloud & On-Prem JSON-Based RESTful, Versioned Easy to Use
25
Public API Framework Built on Webscripts Consistent No XML Required
No FreeMarker, Uses POJOs & Jackson Uses Annotations (nouns) and Interfaces (verbs) Write the Java, we'll handle the REST - Gethin James
26
Public API – Source code
Public SVN
27
Public API – Adding to it
Maven SDK
28
Summary Know the High Level Architecture
Don’t Reinvent Wheels Use AMPs for On-Prem Extension Alfresco Maven SDK API for Talking to Alfresco One CMIS, REST Obviously, attend other Summit talks Expert Bar
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.