WCM-7 Surfing with CMIS

2,024 views

Published on

There is a high demand for companies to publish and promote their content on the web. To accommodate this demand Alfresco has provided a number of solutions covering editorial to web tier. As an example of this demand Ixxus was commissioned by a leading business information publisher to produce a microsite for ‘teaser’ content to increase subscriptions of their main site. To deliver this Ixxus utilized a number of features provided by Alfresco, such as services like the Transfer Service, the web scripts framework, and Surf. The majority of these features now make up the mainstay of Alfresco’s Web Quick Start WCM solution. The goal of this session is to demonstrate a real world example of how the combination of Alfresco, Surf and CMIS offers a great platform for developers to produce content-rich websites quickly. The session will cover: Using Spring Roo to construct a Surf application, Benefits of using Spring Surf, Using the Transfer Service, OpenCMIS in Surf, Varnish your Surf application, and What’s next

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,024
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
49
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

WCM-7 Surfing with CMIS

  1. 1. Surfing with CMIS! Ben Dougherty!
  2. 2. Contents! •  analysis.businessmonitor.com! •  Surf Framework! •  Developer tools! •  Transfer service! •  OpenCMIS! •  Performance! •  Whatʼs next!
  3. 3. analysis.businessmonitor.com!Business Monitor International •  BMI provide data, analysis, ratings and forecast content! •  Industry research, Country risk and financial market analysis! •  175 countries and 22 industry sectors ! •  Provide subscription services! •  Main site www.businessmonitor.com!
  4. 4. analysis.businessmonitor.com!analysis.businessmonitor.com •  A microsite for www.businessmonitor.com! •  Increase subscription numbers and capture leads! •  Provide teaser content! •  Ability to register interest! •  Connect to existing SalesLogix system! •  Provide a/b testing! •  seo friendly design!
  5. 5. analysis.businessmonitor.com!
  6. 6. analysis.businessmonitor.com!Main pages •  Home! •  Intelligence! •  Registration!
  7. 7. analysis.businessmonitor.com!Home page •  Header and footer! •  Carousel! •  Description! •  Latest intelligence!
  8. 8. analysis.businessmonitor.com!Navigation bar •  Tabbed categories! •  Region! •  Country! •  Industry! •  Navigation options reduce on selection!
  9. 9. analysis.businessmonitor.com!Intelligence page •  Filter column to refine selection! •  Ajax call to populate filter! •  Tabbed component! •  List of most recent research articles! •  View Full Story navigates to registration page! •  RESTFul urls!
  10. 10. analysis.businessmonitor.com!
  11. 11. analysis.businessmonitor.com!Registration page •  Retains the current context! •  Auto selects area and interest ! •  User selects other areas interest! •  SalesLogix integration! •  a/b tests!
  12. 12. analysis.businessmonitor.com!Items of note •  Content authored and held in Alfresco! •  Only rendition content! •  CMIS query to retrieve most recent articles! •  Context specific queries! •  No java code! •  Script root object extensions!
  13. 13. Surf Framework!What is Surf? •  View composition plug-in for SpringWeb MVC ! •  Allows modelling of website through XML! •  Can build interfaces with script and templates without java! •  Scripting API though root scoped objects! •  Webscript framework used as component renderers!
  14. 14. Surf Framework!Surf object model •  Define parts of web site! •  Chrome borders! •  Component type! •  Component! •  Page! •  Page association! •  Template type! •  Template! •  Theme!
  15. 15. Surf Framework!Templates and Regions •  FreeMarker, PHP, and XSL! •  Create layouts that can be reused! •  Define regions with scope!
  16. 16. Surf Framework!Region scope •  Global! •  Template! •  Page!
  17. 17. Surf Framework!Request architecture Request   Response   1   7   Spring  MVC  Dispatcher   Web  Script  Run,me   2   6   Web  Script  Run,me   Spring  Applica,on  Context   Controllers   View   5   Model   4   3   Services  
  18. 18. Surf Framework!Surf API •  root scoped objects! •  Available in script and templates! •  remote! •  sitedata! •  user! •  context!
  19. 19. Developer tools!SpringSource Tool Suite •  Spring project and bean file wizards! •  Graphical Spring configuration editor! •  SpringSource tc Server deployment! •  Provides editors! •  Roo project wizard and shell! •  Surf specific extension!
  20. 20. Developer tools!Roo •  SpringSource project! •  Rapid application development tool! •  Command line driven! •  SpringSurf Roo commands Add-on! •  Commands aid surf site construction!
  21. 21. Developer tools!Create project with roo •  Create new roo project ! •  New->Project..->Roo Project! •  Enter project name! •  Enter package name! •  Click finish! •  Produces top level project! •  Spring Application context! •  Maven enabled!
  22. 22. Developer tools - Roo!Install Surf artifacts •  Open Roo Shell! •  Surf install! •  Surf site structure! •  Example pages and components! •  Updates maven pom! •  Deployable application! •  mvn clean package jetty:run!
  23. 23. Developer tools - Roo!Roo command extensions •  surf addon install! •  surf page list! •  surf addon list! •  surf report page! •  surf component create! •  surf site create! •  surf component list! •  surf template create! •  surf component property create! •  surf template instance create! •  surf component resource create! •  surf template instance list! •  surf content association create! •  surf template list! •  surf page association create! •  surf template region list! •  surf page association list! •  surf webscript list! •  surf page create!
  24. 24. Using Transfer Service!Requirement •  Publish articles to web tier! •  Scheduled! •  Batched! •  Categories ʻflattenedʼ to properties! •  Handle failed transactions! •  User interface view queue! •  Provide reports!
  25. 25. Transfer Service!What is it? •  New feature in 3.3! •  Transfer target! •  Node crawler build set of nodes! •  Manifest created! •  Manifest sent to target server! •  Required node list returned! •  Provides events to monitor transfer status!
  26. 26. Transfer customizations •  Bulk transfer action! •  Present transfer queue! •  A flattened aspect! •  A Scheduled service to batch transfer! •  Handled failures! •  Receiver code!
  27. 27. Transfer Service!Changes in 3.4 •  Replication service! •  Sync mode! •  Transferred and alien aspect! •  Read only option!Changes in 4 •  Transfer to file system!
  28. 28. OpenCMIS!CMIS •  Common data model! •  Services! •  Repository! •  Object! •  Discovery services! •  Versioning! •  ACL! •  SOAP and REST bindings!
  29. 29. OpenCMIS!CheMIStry •  Implementation of CMIS specification! •  Client and server libraries in java! •  Single point of access! •  Cache objects! •  CMIS Workbench!
  30. 30. OpenCMIS!Use in analysis •  Query filtered by context and type! •  Only rendition objects! •  Use of spring-cmis-components ! •  No java code use with query! •  Easy to enable in maven!
  31. 31. Performance!Analysis improvements •  OpenCMIS OperationContext ! •  Rendition filter! •  Disable unwanted information like Acls, relationships, policies etc! •  Enable object cache! •  Set maximum results! •  Select named properties in CMIS Query! •  Modeled types and aspects for simpler query! •  Varnish! •  CDN!
  32. 32. Whatʼs next?! •  Upgrade from 3.3! •  Transfer service improvements! •  Replication service! •  Search optimizations! •  WCM author static content! •  Disable permission checks! •  Dynamic Asset Collections! •  Mapping file managed in Alfresco!
  33. 33. Q and A!

×