What’s new in
                             Apache Roller 5.0

                                      Dave Johnson
         ...
Agenda
                   • Roller overview
                   • Story of Roller up to 5.0
                   • Developmen...
Roller Overview



Tuesday, November 24, 2009
Apache Roller is the open source Java blog
                    server that drives Sun Microsystem's
                    bl...
Feature overview




               * Wordpress Mu and Wordpress/Lyceum forks provide multi-blog
               ** LDAP pl...
Deployment architecture #1




Tuesday, November 24, 2009
Deployment architecture #2




Tuesday, November 24, 2009
Why choose Roller?
                                 (Given the dominance of Wordpress)




                 • It’s the bes...
Story of Roller up to 5.0



Tuesday, November 24, 2009
While at HAHT Software




                                2001
Tuesday, November 24, 2009
I learned about open source




                             2001
Tuesday, November 24, 2009
started building something




                             Very early version of Roller, called Homeport at the time, und...
worked nights, weekends
                        and some vacation days too




                                   Alex and...
made it free




                                            2002
Tuesday, November 24, 2009
folks started to use it
       “I am allowing others to use my
          installation of Roller for their
          weblog...
folks started to help
                   •         Lance Lavandowska
                   •         Matt Raible
            ...
Sun joined the fun




                                                  2004
Tuesday, November 24, 2009
I joined Sun




                                            2004
Tuesday, November 24, 2009
Roller joined Apache
                  Proposal for Roller@Apache
                  Dave Johnson - Feb 28, 2005

         ...
Good times...




                        John Hoffman, Dave Johnson, Simon Phipps, Will Snow and Tim Bray in the back acc...
Sun contributed a lot
                    Moved Roller to ASF       AtomPub support
                    Roller 1, 2, 3 ...
IBM started using Roller

     • DeveloperWork:
            external blogs
     • BlogCentral:
            internal blogs
...
IBM’s suite thrived




 Lotus Connections 2.5                             2009
Tuesday, November 24, 2009
Sun’s suite never shipped




                                  2006-2007
Tuesday, November 24, 2009
Roller Timeline
                                                                                                       Lot...
Development of 5.0



Tuesday, November 24, 2009
Sun’s suite requirements
             • Roller as one component of a suite
             • Common user management
         ...
SocialSite requirements
               • Roller as demo vehicle for SocialSite
               • OAuth for AtomPub
        ...
OpenID requirements
               • A Google Summer of Code project
                    •        By Tatyana Tokareva

   ...
Media Blogging Requirements
                •      A San Jose State Univ. student project
                     •       By ...
Other requirements
                   • Multi-domain support
                   • Update all dependencies
                ...
New features in 5.0



Tuesday, November 24, 2009
OpenID support



               •      Support for OpenID logins via Spring Security

               •      new startup p...
Tuesday, November 24, 2009
Media Blogging

                   • Media file gallery browser with thumbnails
                   • Media file metadata and...
Tuesday, November 24, 2009
Tuesday, November 24, 2009
Tuesday, November 24, 2009
Tuesday, November 24, 2009
Simple multi-domain
               • One Roller instance serves multiple domains
                             •    e.g. my...
OAuth for AtomPub


                   • AtomPub authentication options now:
                    • OAuth
                 ...
Tuesday, November 24, 2009
import com.sun.syndication.propono.atom.client.*                 Blog post
                                               ...
Updated dependencies
                     struts2-core-2.1.8.jar                      openjpa-1.2.1.jar
                  ...
Roller Project Status



Tuesday, November 24, 2009
Project overview
              • Project status
               • Great new 5.0 release ready to go
               • 7 comm...
Web & download statistics




Tuesday, November 24, 2009
Mailing list activity




Tuesday, November 24, 2009
What comes next?



Tuesday, November 24, 2009
Apache Roller 5.0

                   • Still have work to do
                   • Testing, debugging, fixing, voting and e...
After that?
                   • Speaking for myself; might be fun to...
                   • Build a new front-end?
     ...
Avoiding the attic
                   •         If we want to
                         •     keep Roller going
           ...
How to help...
                      “The way to join the project is to subscribe to the
                      development...
Conclusion

                   • We’ve got another great release ready
                   • But we’ve entered a new phase ...
Upcoming SlideShare
Loading in...5
×

Whats New In Roller5

19,425

Published on

In this talk, we'll cover the features of Apache Roller 5.0, and how it compares to other blog server options. We'll also look at typical deployment architectures, and examples of Roller sites in production today. The talk will discuss in detail some of the ongoing, student-driven work on OpenID and on better Media Blogging support.

http://www.us.apachecon.com/c/acus2009/sessions/280

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

  • Be the first to like this

No Downloads
Views
Total Views
19,425
On Slideshare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
Downloads
57
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Whats New In Roller5

  1. 1. What’s new in Apache Roller 5.0 Dave Johnson VP Apache Roller at ASF Web 2.0 Architect at IBM ApacheCon US 2009 - Oakland, CA Tuesday, November 24, 2009
  2. 2. Agenda • Roller overview • Story of Roller up to 5.0 • Development of Roller 5.0 • New features in 5.0 • Roller Project Status • What’s comes next? Tuesday, November 24, 2009
  3. 3. Roller Overview Tuesday, November 24, 2009
  4. 4. Apache Roller is the open source Java blog server that drives Sun Microsystem's blogs.sun.com employee blogging site, the US Government's blog.usa.gov, the blogs in IBM's Lotus Connections product, the IBM Developer Works blogs, the Javalobby's 10,000 user strong JRoller Java community site and hundreds of other blogs world-wide. If you want to set up a blog server for yourself or for several thousand of your closest friends, try Roller! http://rollerweblogger.org/project/ Tuesday, November 24, 2009
  5. 5. Feature overview * Wordpress Mu and Wordpress/Lyceum forks provide multi-blog ** LDAP plugin exists but is experimental and unsupported Tuesday, November 24, 2009
  6. 6. Deployment architecture #1 Tuesday, November 24, 2009
  7. 7. Deployment architecture #2 Tuesday, November 24, 2009
  8. 8. Why choose Roller? (Given the dominance of Wordpress) • It’s the best open source blog server option for the Java platform • Can be made to work with just about any relational database • Can be made to work with just about any Java application server • Proven solution for large multi-user sites Tuesday, November 24, 2009
  9. 9. Story of Roller up to 5.0 Tuesday, November 24, 2009
  10. 10. While at HAHT Software 2001 Tuesday, November 24, 2009
  11. 11. I learned about open source 2001 Tuesday, November 24, 2009
  12. 12. started building something Very early version of Roller, called Homeport at the time, under development in the HAHTsite IDE. 2001 Tuesday, November 24, 2009
  13. 13. worked nights, weekends and some vacation days too Alex and Linus Johnson taking an morning walk at Ocraocoke Island, North Carolina - September 2001 2001 Tuesday, November 24, 2009
  14. 14. made it free 2002 Tuesday, November 24, 2009
  15. 15. folks started to use it “I am allowing others to use my installation of Roller for their weblogging. Hopefully this will provide a means for enhancing the Roller user base as well as provide a nice environment for communication and expression.” Anthony Eden August 8, 2002 2002 Tuesday, November 24, 2009
  16. 16. folks started to help • Lance Lavandowska • Matt Raible • Mindaguas Idzelis • Jaap Van Der Molen • Anil Gangolli • Henri Yandell • and more... 2002-2004 Tuesday, November 24, 2009
  17. 17. Sun joined the fun 2004 Tuesday, November 24, 2009
  18. 18. I joined Sun 2004 Tuesday, November 24, 2009
  19. 19. Roller joined Apache Proposal for Roller@Apache Dave Johnson - Feb 28, 2005 We the committers and friends of the open source Roller Weblogger project propose that the project become part of the Apache Software Foundation. The rest of this document explains the rationale behind this proposal, how Roller meets the Apache project scope, initial source, resources required, and initial committer criteria. 0 Rationale Roller is an open source blog server written in Java and originally developed in 2002 for an O'Reilly article titled Building an Open Source J2EE Weblogger. Now Roller is used on multi-user blog servers at the Javalobby's JRoller.com (> 7000 blogs), Sun's blogs.sun.com (>1000 blogs), and numerous other sites. Roller is an open source product, available under an Apache-based license, with 5 committers. Recently Sun hired the original author of Roller to develop Roller and other blog technologies. Sun and the Roller developers want to ensure Roller's continued success as a viable, growing, open source product. We think that perhaps the best way to do this is to become an Apache project. 2005 Tuesday, November 24, 2009
  20. 20. Good times... John Hoffman, Dave Johnson, Simon Phipps, Will Snow and Tim Bray in the back accept a Sun Microsystems 2005 Chairman’s Award for blogs.sun.com and Humanizing the Corporation. Award winners Danese Cooper and Pat Chanezon not present. Tuesday, November 24, 2009
  21. 21. Sun contributed a lot  Moved Roller to ASF  AtomPub support  Roller 1, 2, 3 and 4  New template system  Group blogging  New macro system  Planet aggregator  UI overhaul  Pluggable rendering  Theme packaging  Pluggable caching  Easy install support  JPA back-end  Memcached caching  Struts 2 migration  And much more...  Configuration system 2004-2008 Tuesday, November 24, 2009
  22. 22. IBM started using Roller • DeveloperWork: external blogs • BlogCentral: internal blogs • And in 2007, launched Lotus Connections including Roller Early screenshot of Lotus Connections (code named “Ventura”) from Elias Torres personal blog 2005-2007 Tuesday, November 24, 2009
  23. 23. IBM’s suite thrived Lotus Connections 2.5 2009 Tuesday, November 24, 2009
  24. 24. Sun’s suite never shipped 2006-2007 Tuesday, November 24, 2009
  25. 25. Roller Timeline Lotus Connections Join Graduate blogs.sun.com Sun ASF ASF 0.9.0 0.9.3 0.9.6 0.9.7 0.9.8 1.0 1.1 1.3 2.0 3.0 4.0 5.0 rc Apr July Oct Apr Sep Jan April Oct Dec Nov Dec Oct 2002 2002 2002 2003 2003 2005 2005 2005 2005 2006 2007 2009 2.1 2.3 3.1 3.1.1 rc 4.0.1 Mar Nov Apr Nov Jan 2006 2006 2007 2006 2009 Bug fixes Blogger API Performance Podcasts New URL system Bug fixes OSCache Indexes, etc. Entry Atts New Template model Group Blogs Multi-language blogs Media Blogging Admin UI Spam Mgmt Superuser OpenID, OAuth Multi-user Entry plugins Web UI redesign Tagging Multi-domain Referrers Castor -> Hibernate New theme system Full preview Comment Mgmt Pluggable Cache Theme stylesheets Comments Trackbacks Hibernate -> OpenJPA MetaWeblogAPI Entry summaries Migrated to Struts 2 Day and month views AtomPub Tuesday, November 24, 2009
  26. 26. Development of 5.0 Tuesday, November 24, 2009
  27. 27. Sun’s suite requirements • Roller as one component of a suite • Common user management • So we made user management pluggable • Single sign on support via Container • So we made Spring Security optional • Federated search • So we added OpenSearch support • AtomPub everywhere • Integrated ROME Propono 2006-2007 Tuesday, November 24, 2009
  28. 28. SocialSite requirements • Roller as demo vehicle for SocialSite • OAuth for AtomPub • Access to user information in macros 2007-2008 Tuesday, November 24, 2009
  29. 29. OpenID requirements • A Google Summer of Code project • By Tatyana Tokareva • Implement OpenID • With or without Spring Security 2008 Tuesday, November 24, 2009
  30. 30. Media Blogging Requirements • A San Jose State Univ. student project • By Ganesh Mathrubootham and Tanuja Varkanthe • Media gallery • Media file metadata • Media file chooser • Media file feeds • Easy blogging of media files • Include as image • Include as podcast 2008-2009 Tuesday, November 24, 2009
  31. 31. Other requirements • Multi-domain support • Update all dependencies • Fix bugs Tuesday, November 24, 2009
  32. 32. New features in 5.0 Tuesday, November 24, 2009
  33. 33. OpenID support • Support for OpenID logins via Spring Security • new startup property authentication.openid • Allowed values: disabled, hybrid and only. http://cwiki.apache.org/confluence/display/ROLLER/Proposal+OpenID+Support https://issues.apache.org/roller/browse/ROL-1733 Tuesday, November 24, 2009
  34. 34. Tuesday, November 24, 2009
  35. 35. Media Blogging • Media file gallery browser with thumbnails • Media file metadata and feeds • Easy to add an image to a blog entry • Easy to upload then blog images Tuesday, November 24, 2009
  36. 36. Tuesday, November 24, 2009
  37. 37. Tuesday, November 24, 2009
  38. 38. Tuesday, November 24, 2009
  39. 39. Tuesday, November 24, 2009
  40. 40. Simple multi-domain • One Roller instance serves multiple domains • e.g. my site at rollerweblogger.org serves four domains via the configuration below # roller-custom.properties weblog.absoluteurl.photophys=http://photophys.com weblog.absoluteurl.alex=http://greenimp.me weblog.absoluteurl.linus=http://linusjohnson.com https://issues.apache.org/jira/browse/ROL-1670 http://cwiki.apache.org/confluence/display/ROLLER/Proposal+Simple+Multidomain+Support Tuesday, November 24, 2009
  41. 41. OAuth for AtomPub • AtomPub authentication options now: • OAuth • WSSE • Basic Tuesday, November 24, 2009
  42. 42. Tuesday, November 24, 2009
  43. 43. import com.sun.syndication.propono.atom.client.* Blog post example import com.sun.syndication.feed.atom.* def authStrategy = new OAuthStrategy( "roller", // username using Groovy "55132608a2fb68816bcd3d1caeafc933", // consumer key "bb420783-fdea-4270-ab83-36445c18c307", // consumer secret and ROME "HMAC-SHA1", // key type "http://blogs.example.com/roller-services/oauth/requestToken", Propono "http://blogs.example.com/roller-services/oauth/authorize", "http://blogs.example.com/roller-services/oauth/accessToken") // get the AtomPub service def appService = AtomClientFactory.getAtomService( "http://blogs.example.com/roller-services/app", authStrategy) // find workspace of my blog def blog = appService.findWorkspace("Blogging Roller") // find collecton that will accept entries def entries = blog.findCollection(null, "application/atom+xml;type=entry") // create and post an entry def entry = entries.createEntry() entry.title = "TestPost" def content = new Content() content.setValue("This is a test post. w00t!") entry.setContent([content]) entries.addEntry(entry) Tuesday, November 24, 2009
  44. 44. Updated dependencies struts2-core-2.1.8.jar openjpa-1.2.1.jar struts2-spring-plugin-2.1.8.jar geronimo-jpa_3.0_spec-1.0.jar struts2-tiles-plugin-2.1.8.jar geronimo-jta_1.1_spec-1.1.jar taglibs-string-1.1.0.jar serp-1.13.1.jar tiles-api-2.0.6.jar tiles-core-2.0.6.jar tiles-jsp-2.0.6.jar rome-1.0.jar freemarker-2.3.15.jar rome-fetcher-1.0.jar ognl-2.7.3.jar rome-propono-1.0.jar oro-2.0.8.jar jdom-1.1.1.jar antlr-2.7.2.jar xwork-core-2.1.6.jar commons-beanutils-1.7.0.jar xmlrpc-common-3.1.2.jar commons-chain-1.2.jar xmlrpc-client-3.1.2.jar commons-validator-1.3.1.jar xmlrpc-server-3.1.2.jar commons-io-1.3.2.jar ws-commons-util-1.0.2.jar commons-codec-1.4.jar commons-fileupload-1.2.1.jar jstl.jar (1.2.2) spring-2.5.6.jar standard.jar saxpath-1.0.jar spring-web-2.5.6.jar serializer.jar spring-ldap-1.3.0.RELEASE-all.jar xalan.jar spring-security-acl-2.0.5.RELEASE.jar spring-security-core-2.0.5.RELEASE.jar guice-2.0.jar spring-security-taglibs-2.0.5.RELEASE.jar velocity-1.6.2.jar spring-security-openid-2.0.5.RELEASE.jar openid4java-0.9.5.jar lucene-core-2.9.0.jar apache-xml-security.jar log4j-1.2.12.jar ehcache-1.6.2.jar commons-lang-2.4.jar openxri-client-1.2.0.jar commons-logging-1.1.1.jar openxri-syntax-1.2.0.jar commons-collections-3.2.1.jar commons-digester-2.0.jar oauth-core-20090121.jar commons-httpclient-3.1.jar nekohtml-1.9.7.jar httpclient-4.0-beta1.jar Xinha 0.95 (JavaScript) httpcore-4.0-beta2.jar Yahoo UI Library 2.8.0 jQuery 1.3.1 Tuesday, November 24, 2009
  45. 45. Roller Project Status Tuesday, November 24, 2009
  46. 46. Project overview • Project status • Great new 5.0 release ready to go • 7 committers, 3 recently active (none full-time) • Last release: Roller 4.0.1, January 2009 • 4 active mailing lists, averaging 4 mails/day • Issues • Few active committers, small user community Tuesday, November 24, 2009
  47. 47. Web & download statistics Tuesday, November 24, 2009
  48. 48. Mailing list activity Tuesday, November 24, 2009
  49. 49. What comes next? Tuesday, November 24, 2009
  50. 50. Apache Roller 5.0 • Still have work to do • Testing, debugging, fixing, voting and etc. • We need your help! Tuesday, November 24, 2009
  51. 51. After that? • Speaking for myself; might be fun to... • Build a new front-end? • GWT, Dojo, OpenSocial Gadgets? • Make Roller pluggable? • New plugin architecture, OSGi, Maven? • Help new contributors? • Or maybe it’s time to move on. Tuesday, November 24, 2009
  52. 52. Avoiding the attic • If we want to • keep Roller going • be able to grow community • be able to make releases • Then • we need a couple more PMC members • we need you to participate • we need you to contribute Tuesday, November 24, 2009
  53. 53. How to help... “The way to join the project is to subscribe to the development mailing list and start acting like a member ask questions, make suggestions, respond to questions, propose changes and submitting fixes and patches. If you get along well with others, do quality work and show some commitment to the project somebody will most likely nominate you to be a committer.” From http://cwiki.apache.org/confluence/display/ROLLER/How+to+contribute+to+Roller Tuesday, November 24, 2009
  54. 54. Conclusion • We’ve got another great release ready • But we’ve entered a new phase for Roller • We’re community driven • That means you Tuesday, November 24, 2009
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×