web scripts, surf and cmis [a developer's intro to alfresco, part 3. by jeff potts]

9

Click here to load reader

Upload: alfresco-software

Post on 08-May-2015

5.162 views

Category:

Technology


1 download

DESCRIPTION

\Web Scripts, Surf, & CMIS What is the Web Scripts 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 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 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 Surf's two-tier architecture: - presentation tier... model objects, spring, freemarker, etc.) - repository tier (web scripts, repository, CMIS, Social UI, content graph, etc.) Demo Much more to explore: 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 More information and resources: Alfresco Developer Guide http://www.packtpub.com/alfresco-developer-guide/book Alfresco Content Community http://share.alfresco.com 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

TRANSCRIPT

Page 1: Web Scripts, Surf and CMIS [A Developer's Intro to Alfresco, Part 3. By Jeff Potts]

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: Web Scripts, Surf and CMIS [A Developer's Intro to Alfresco, Part 3. By Jeff Potts]

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: Web Scripts, Surf and CMIS [A Developer's Intro to Alfresco, Part 3. By Jeff Potts]

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: Web Scripts, Surf and CMIS [A Developer's Intro to Alfresco, Part 3. By Jeff Potts]

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: Web Scripts, Surf and CMIS [A Developer's Intro to Alfresco, Part 3. By Jeff Potts]

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: Web Scripts, Surf and CMIS [A Developer's Intro to Alfresco, Part 3. By Jeff Potts]

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: Web Scripts, Surf and CMIS [A Developer's Intro to Alfresco, Part 3. By Jeff Potts]

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: Web Scripts, Surf and CMIS [A Developer's Intro to Alfresco, Part 3. By Jeff Potts]

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: Web Scripts, Surf and CMIS [A Developer's Intro to Alfresco, Part 3. By Jeff Potts]

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