intro to alfresco part 3

9
A Developer’s Introduction to the Alfresco Platform Part One: Learning Your Way Around Part Two: The Content Model, Rules & Actions Part Three: Web Scripts, Surf, & CMIS Jeff Potts Content Management Practice Lead

Upload: jeff-potts

Post on 08-May-2015

3.471 views

Category:

Technology


1 download

DESCRIPTION

Slide deck from an Alfresco Webinar. Event info can be found at http://blogs.alfresco.com/wp/webcasts/2009/05/alfresco-webcast-developers-guide-3-web-scripts-surf-cmis-optaros/ This presentation discusses web scripts and Surf.

TRANSCRIPT

Page 1: Intro To Alfresco Part 3

A Developer’s Introduction to the Alfresco Platform

Part One: Learning Your Way Around

Part Two: The Content Model, Rules & Actions

Part Three: Web Scripts, Surf, & CMIS

Jeff Potts

Content Management Practice Lead

Page 2: Intro To Alfresco Part 3

2© Optaros 2008. All rights reserved.

Recap

In Part Two we looked at some very basic building blocks within the Alfresco platform

• Custom content model• Rules• Actions

In Part One we looked at apattern for custom content-centric apps

Page 3: Intro To Alfresco Part 3

3© Optaros 2008. All rights reserved.

What is the Web Script Framework?

Alfresco’s REST API can be thought of in three chunks• Alfresco URLs used by Explorer and Share (tagging, comments,

blogs, discussions, etc.)• CMIS URLs used for generic node operations, queries, and

repository traversal• Custom URLs

Web Script Framework used to declare a URL, bind it to logic, provide views

• Model-View-Controller pattern• Controller implemented in JavaScript or Java• Views implemented in FreeMarker

Deployed to the repository or the classpath

Page 4: Intro To Alfresco Part 3

4© Optaros 2008. All rights reserved.

What is CMIS?

Draft OASIS specification, not a ratified standard yet• Alfresco, IBM, Microsoft, Oracle, FileNet support• Alfresco rolled out an early implementation of the draft spec as well

as a unit test suite

Two parts• Interoperability through standard SOAP and RESTful bindings• SQL-based query language for rich content repositories

RESTful responses returned as extended ATOM

Think of it as a language-independent, repository-independent API for content management

• CRUD functions for nodes• Check-in/check-out• Associations• Policies• Queries• Repository traversal

Page 5: Intro To Alfresco Part 3

5© Optaros 2008. All rights reserved.

What is Surf?

Web application development framework built on web scripts

Essentially web scripts++• Page definition• Declarative handshakes to HTTP end points• Page, page type, and object dispatching

Includes built-in hooks for talking to Alfresco and loading objects from the repository

Page 6: Intro To Alfresco Part 3

6© Optaros 2008. All rights reserved.

Surf’s Two-Tier Architecture

Presentation Tier

Repository Tier

Spring

Connectors

REST

Web Scripts

FreeMarker

Dis

pa

tch

er

Surf

Model Objects

PagesTemplates

ComponentsThemes

Associations

JSON

Web Scripts

RepositoryCMIS

SocialUI

JSON

Content Graph

DocumentsFoldersAssociationsAspects

Page 7: Intro To Alfresco Part 3

7© Optaros 2008. All rights reserved.

Demo

Hello World Web Script

CMIS URL

Alfresco Developer Guide Rating Example

Status & Bookmark Share Dashlets

Green Energy Site

Page 8: Intro To Alfresco Part 3

8© Optaros 2008. All rights reserved.

Much More to Explore on Your Own

Alfresco Explorer Client Customization

Behaviors

Metadata Extractors

Transformers

Advanced Workflow (JBoss jBPM)

Permissions

Authentication against LDAP

Web Services API

AMPs

Import/Export

Web Content Management• Sandboxes• Web Forms• Deployment

Page 9: Intro To Alfresco Part 3

9© Optaros 2008. All rights reserved.

For More Information…

Alfresco Developer Guide• http://www.packtpub.com/alfresco-developer-guide/book

Alfresco Content Community• http://hosted4.alfresco.com/alfresco

Alfresco Forums• http://forums.alfresco.com

Alfresco Wiki• http://wiki.alfresco.com

Alfresco Blogroll• http://blogs.alfresco.com/planet/

ECM Architect• http://ecmarchitect.com

Optaros Home Page• http://www.optaros.com