intro to alfresco part 3
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
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
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
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
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
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
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
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
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
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