Your SlideShare is downloading. ×
0
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
0910 cagliari- spring surf and cmis - the dynamic duo
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

0910 cagliari- spring surf and cmis - the dynamic duo

3,493

Published on

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,493
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
76
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Architecture, design, tune! Load balancing and caching Up and out scaling infrastructure Components tuning Profiling and benchmarking... Solution oriented approach!
  • Transcript

    • 1.
      • Gabriele Columbro
      • Senior Solutions Engineer, Alfresco EMEA [email_address]
      Content applications with Spring Surf & Chemistry OpenCMIS Spring Italian Conference Cagliari, September 4th 2010
    • 2. Agenda
      • Intro
      • Spring Webscripts and Spring Surf
      • CMIS made easy with OpenCMIS
      • Demo : Surf OpenCMIS powered webapp
      • Project Roadmaps
      • Conclusions and Q/A
    • 3.
      • Spring Surf and OpenCMIS
      Introduction Spring Italian Conference Cagliari, September 4th 2010
    • 4. Who we are?
      • Alfresco is leading the open source ECM
        • Document / Records Management finally accessible
        • Collaboration made easy
        • And ... Web Content Management, Image Management, Digital Asset Management, * Content Management
        • 5 years old, alive and kicking ( biggest private open source company )
      • Gabriele Columbro
        • Senior Solution Engineer for Alfresco EMEA
        • Since 4 years in Amsterdam
        • Open source enthusiast and committer for
          • Apache Chemistry
          • Spring Surf
          • Alfresco
        • Ahhh...and a Maven freak :)
    • 5. Surf in Cagliari? :)
    • 6. Got content?
    • 7. What are you going to do with it?
      • Write it
        • Editors
        • Business representatives
        • UCG (User Generated Content)
      • Process it
        • Transformations
        • Business processes
        • Branding
      • Store it
        • Data vs metadata
        • Structured and unstructured
        • Archival and categorization
      • But who cares about content which nobody will read? :)
      • So fundamental step is...
    • 8. ...Delivery!!! 4
    • 9. ECM and Content Delivery
      • ECM Trends in last 3 years
        • Standardization with CMIS
        • Commoditization of the cloud
        • Everything is content!
      • Content Delivery trends
        • Socialization of content ( 2 way channels )
        • Write once --> Deliver Everywhere (Servlet, Portlet, OpenSocial, etc.)
        • Lightweight frameworks
      • Alfresco in 2007 was offering a JSF client
        • Hard to customize and not easily remotable
        • Hardcore java skills required --> rapid application development
        • Alfresco community demands a new way to deliver content
      • Idea : Tailor make a content delivery framework for Alfresco
        • Component based page composition
        • Open Source
        • Open Standards based
        • Scriptable and extensible
    • 10.
      • Spring Surf and OpenCMIS
      Spring Webscripts and Surf Spring Italian Conference Cagliari, September 4th 2010
    • 11. Genesis of a framework
      • 2007
        • Alfresco 2.1 introduces Alfresco Web Scripts
          • Micro MVC ReST framework
          • Scriptable - Control in JS or Java
          • Templates in Freemarker
        • Started development on so called Alfresco Web Framework based on Web Scripts
      • 2008
        • Alfresco Web Framework is completed
        • AWF renamed to Alfresco Surf
        • Alfresco Share (Alfresco collaboration interface) is based con Alfresco Surf
      • 2009
        • First contacts between Alfresco and Spring Source
        • Alfresco Webscripts and Surf integrated with Spring MVC
        • Alfresco Surf and Webscripts contributed as Spring Webscripts and Spring Surf
      • 2010
        • 3 Milestones released (latest 1.0.0-M3)
    • 12. Spring Web Scripts
    • 13. Anatomy of a webscript Description document An xml file which describes the Web script's properties, for example its URI and HTTP method binding. The name of this file must comply with the Web Script Framework as follows:- <web script id>.<http method>.desc.xml For example: foo.get.desc.xml Controller script A JavaScript file which contains the logic of the Web script. Its output on execution is a model to render in the response template. The name of this file must comply with the Web script Framework as follows:- <web script id>.<http method>.js For example: foo.get.js Response template A FreeMarker template which renders the output response. The template has access to the model generated by the controller script, and the Web script's invocation context.The name of this file must comply with the Web script Framework as follows:- <web script id>.<http method>.<format>.ftl For example: foo.get.html.ftl
    • 14. Java Backed Webscripts
    • 15. Spring Surf
      • What Spring Surf is?
        • A set of Spring MVC View Resolvers
          • Page, Component (Webscript)
          • You can add your favorite Controller
        • A page composition framework
          • Modeling standard component based web engineering concepts
          • Pages, Templates, regions, components
        • Advanced remoting facilities
          • Modeling standard component based web engineering concepts
          • Pages, Templates, regions, components
        • A set of developer productivity tools
          • Spring Tool Suite integration
          • Spring Roo extensions
          • Self documentation for Webscripts and Surf
      • What Spring Surf is NOT ?
        • A Spring MVC controller (all in the view)
        • Alfresco specific
        • Being bought by Oracle :)
    • 16. Spring Surf Page composition Page composition
    • 17. Spring Surf Remoting Remoting
    • 18. Spring Surf Developer Tools Developer Tools
      • Spring Roo Plugin for Surf
      • Command line scaffolding for Surf
      • Surf sites, pages, components
      • Web Scripts and CRUD operations
      • SpringSource Tool Suite
      • Plugin for Surf
      • Surf Application wizards
      • Maven Plugins
      • Documentation Generation
      • Maven Build Scripts
      • http://maven.alfresco.com
      • Javascript and Freemarker editors
      • Platform
      • Spring Roo 1.0.2
      • Spring Framework 3.0.1
    • 19. And the content?
      • Where can we “suck” content from?
        • Obviously Alfresco (pre-configured endpoint)
        • Any source for which we configured a triplet
      • [authenticator, connector, endpoint]
      • CMIS offers a new way to look at Content Repositories
        • CMIS is the SQL for content management
        • All major ECM vendors are implementing CMIS
          • Alfresco / Sharepoint / Documentum / Filenet / Oracle
        • Most open source delivery frameworks are riding the CMIS horse
          • Drupal / Liferay / Django / Joomla
        • But how can we have Surf and Webscripts speak CMIS?
      • Apache Chemistry OpenCMIS is the answer!
    • 20.
      • Spring Surf and OpenCMIS
      CMIS made easy with OpenCMIS Spring Italian Conference Cagliari, September 4th 2010
    • 21. CMIS who?
      • CMIS stands for “Content Management Interoperability Services”
        • 1.0 OASIS standard in April 2010
        • Standard domain model and services for content management
        • Cross-language, cross-protocol, cross-vendor
          • Atom (pub) binding
          • SOAP binding
          • (v2) JSON browser binding
      • CMIS use cases
        • Federation
        • Migration
        • Transparent content delivery
        • Mash up
      • Content applications in a write once / use everywhere fashion
      • Test it on: http://cmis.alfresco.com
    • 22. Chemistry OpenCMIS
      • Fully fledged Java Implementation for the CMIS standard
        • API for client applications (AtomPub & SOAP)
        • Server bindings for server implementors
        • TCK for server validation
        • Caching and session management
      • Based on a lightweight technology stack
        • StAX (Streaming API for XML)
        • Apache CXF for webservices
        • Build by Apache Maven
      • State of the art
        • Contributed to Apache by Alfresco / SAP / OpenText in early 2010
        • 5 committers from Alfresco
        • Merged with existing Chemistry codebase
        • Approaching 0.1 release (if I find some time :) )
      • Allow developers to focus on the Content Domain Model!
    • 23. CMIS Domain Model
    • 24. Spring CMIS application browser
      • OpenCMIS integrated in the Webscripts runtime
        • Offers a sample CMIS powered Surf Webscripts based application
        • Developed by Alfresco
        • Allows remote multi repository access
      • Features
        • Technology independent repository browsing
        • Content and metadata access
        • Federated search
        • Embeddable and extensible
      • How can you use it?
        • Check out the Spring Surf Sandbox ( https://anonsvn.springframework.org/svn/se-surf/trunk/sandbox )
        • Wait for next Surf release :)
        • Check out the demo!
    • 25.
      • Spring Surf and OpenCMIS
      Demo: Spring Surf CMIS powered webapp Spring Italian Conference Cagliari, September 4th 2010
    • 26. Demo objectives
      • Demo the spring-cmis-application-browser
      • Familiarize with STS Surf Add-on
      • Generate a sample Surf application
      8080 80 Local Alfresco cmis.alfresco.com Spring CMIS Browser 8081 Favourite CMIS server
    • 27. Surf Demo App
    • 28.
      • Spring Surf and OpenCMIS
      Project roadmaps Spring Italian Conference Cagliari, September 4th 2010
    • 29. Spring Surf work in progress
      • Spring CMIS browser productized and fully Surf integrated
      • Stabilization and 1.0 final release
      • Additional runtime integrations (using Spring WebRequest )
        • Spring MVC Portlet (DEV_SPRING_PORTLET branch)
        • Open Social?
      • Samples and documentation
        • Alfresco WCM Quickstart Fully fledged WCM quick start application using Surf and Alfresco http://wiki.alfresco.com/wiki/WCM_Quick_Start_Developer_Guide
        • Alfresco Web Editor Surf based in context content editor
    • 30. OpenCMIS approaching release
      • OpenCMIS community growing
      • Server and client implementations complete
      • 0.1-RC1 rejected by Apache Incubator (for legal packaging issues)
      • 0.1-RC2 undergoing
        • Legal issues fixed
        • Apache mentors validating packages
        • Mid sept
    • 31.
      • Spring Surf and OpenCMIS
      Conclusions and Q/A Spring Italian Conference Cagliari, September 4th 2010
    • 32. Got Questions?
    • 33. References
      • Alfresco
      • OpenCMIS
      • Spring Su rf
      • WCM Quic kStart
      • Sprin g CMIS browser
    • 34. Thanks! Gabriele Columbro twitter: @mindthegabz http://www.mindthegab.com [email_address] o.com

    ×