Blogging Roller

Dave Johnson on open web technologies, social software and software development


Roller Weblogger Brings it Together

I went to download Velocity 1.3 and was pleased to find Roller featured prominently on the Velocity website. Thanks!
Tags: Roller

Roller status

I have not been able to spend a lot of time on Roller development recently, but I have gotten a couple of things done. I took a look at at alternative webapp and persistance frameworks and decided to stick with Struts and Castor for the time being.

Also, I implemented a simple backup mechanism for Roller. I started working with Axis (the next generation of Apache SOAP) and I was hoping to create a SOAP-based blog-backup interface for Roller. But I ended up just writing a Servlet that blasts out the current user's data in Roller's own (Castor-generated) XML format - no SOAP needed for that.

Right now, I'm working on bookmark import. I've got a start-page of favorite links and I want to import them into Roller. To do this, I wrote a little command-line program that parses an HTML page and then writes all links from that page to an OPML file (maybe I should have used XBEL, but OPML was easier). Now I need to get that data into Roller, perhaps by file-upload perhaps by SOAP.

Once I complete bookmark import, I'll probably polish-up Roller's bookmark management and display features and put out a 0.9.5 release. Perhaps I should throw in Radio import as well.
Tags: Roller

Roller 0.9.4.1 source release

I just uploaded a new new source release because the 0.9.4 release did not include build scripts! The build scripts do so much code generation that there is really no way to do a build without them and nobody complained (that is an interesting data point). Anyhow, after you down load roller-src-0.9.4.1.tgz and roller-tools-0.9.4.1.tgz, doing a build should be as easy as this (and ignore the XDoclet warnings):
   % tar xzvf roller-src-0.9.4.1.tgz
   % tar xzvf roller-tools-0.9.4.1.tgz
   % cd roller
   % build all
Tags: Roller

Actions part of Controller or Model?

[Struts] developers have a differing opinion on whether the Action class is part of the controller or the model. The argument for it being part of the controller is that it isn’t part of the “real” business logic. If Struts were replaced with an alternative framework, chances are the Action class would be replaced with something else. Therefore, it really isn’t part of the model domain, but rather tightly coupled to the Struts controller. It doesn’t make sense to put business logic into the Action, since other types of clients can’t easily reuse it. From Chapter 3 in the Server Side's Jakarta Struts Book Review Project
In the alternative framework WebWork, the action classes could be considered to be part of the model because they include no presentation specific code (i.e. no Servlet API calls). Some would argue that this is better and allows re-use of actions, but I think it is just different. For Roller, the WebWork approach really does not buy me much - my 'business logic' is already re-usable and encapsulated in my model interfaces and classes.
Tags: Roller

Awesome!

Karl wants to try Roller. With his content management background, he might have some cool ideas for the Roller roadmap.
Tags: Roller

Roller 0.9.4 is available

No new features, only bug fixes:
  • #576004: Blogger API posts do not flush cache
  • #576719: Calendar in Weblog:Edit page not working
  • #576902: Error in web.xml, rollerdb datasource was omited
  • #576157: RSS feed items are not ordered properly
  • #576731: Database jars should go in common/lib
Download it at the SourceForge download page.
Tags: Roller

DaveAndi

So far, the most worthwhile application that I have found for my Roller weblogging software has been the DaveAndi weblog. DaveAndi is a password protected weblog for family and friends who are intested in knowing what is going on with new baby Leo. I'm not going to share the password with you because 1) you'd be bored to tears and 2) it ain't none of your business.

Tags: family roller

Happy birthday USA

I'm going to hold off on Roller 0.9.4 for now. I want to fix a couple of bugs before I do another release and I want to enjoy the 4th.
Tags: Roller

Roller 0.9.4 tonight?

Another glitch was found in Roller 0.9.3, so I will have to release a Roller 0.9.4 later on today.
Tags: Roller

Oops!

I made a mistake in Step 5 of the Roller Installation Guide. The Jakarta Commons jars and the MM.MySQL JDBC driver jar need to go into the Tomcat common/lib directory, not the server/lib directory. I have updated online version of the Roller Installation Guide, but I'm not going to do a 0.9.4 release just for this.
Tags: Roller

Roller 0.9.3 is ready
Download it today. Here are the new features.
  • Blogger API Support: contributed by Shawn Dahlen (dahlen at mitre.org). See the Roller User Guide for details.
  • Database configuration via JNDI DataSources: Roller now looks up datasources in JNDI (using java:comp/env/jdbc/rollerdb).
  • Database connection pooling: if you follow the instructions in the Roller Installation Guide, Roller will use database connection pooling.
  • Results caching for weblog pages: Roller now uses OSCache for caching all weblog pages. This results in a dramatic improvement in performance.
  • Three new themes: Roller now includes three new themes, adapted from free themes found on blogskins.com.
  • Lots of bug fixes: too numerous to list.
This post was made via the Blogger API using the w:bloggar client.
Tags: Roller

I'm back

I have a new Servlet ISP that is quite simply awesome: Kattare. I'll talk more about Kattare and the new Roller 0.9.3 release later. Right now, I need to get outside for a while.
Tags: Roller

CQHost problems

After keeping their Servlet engine up for a record 4 days, CQHost (the ISP that hosts rollerweblogger.org) went down again yesterday and stayed down for about 20 hours.

I can understand that it might be difficult for CQHost to provide anything near 99% uptime for only $12.50 per month. What I cannot understand is their complete refusal to provide any Servlet engine status information on their Server Manager web page. They don't even give you access to your logs in the Server Manager. When the Servlet engine goes down, it would be very reassuring to read "JSP support is down now, we are working to restore service" or something like that. I guess they prefer to wade through piles of "SERVER DOWN!" trouble tickets.

Other ISPs provide detailed status information. How nice. I wish those other ISPs also offered Servlet support.

Tags: Roller

Roller Roadmap

Here is that Roller Roadmap that I mentioned yesteday. If you have some suggestions about the roadmap, or (more importantly) if you'd like to help out - please let me know.
Tags: Roller

Roller roadmap

Shawn Dahlin and I have been working on a roadmap of future Roller features. I just sent it out to the Roller dev list and I will probably post a link to it here later today.
Tags: Roller

Upcoming Roller 0.9.3 release

Most of the work is already done and in CVS, so I'm hoping I can package this up in the next couple of weeks. Here are the new features:
  • New tabbed menu in editor interface (already in CVS)
  • Better day and entry permalinks (already in CVS)
  • Blogger API support (almost done - some of it in CVS)
    • New website setting: Enable Blogger API
    • New website setting: Category for Blogger API posts
  • Add Resin servlet engine to installation guide (to be done)
  • Add javax.sql.ConnectionPooledDataSource setup to installation guide (to be done)
  • Three nice themes (to be done)
Tags: Roller

Performance problems

Rendering a weblog page at rollerweblogger.org (an Intel-based Linux box) seems 4-5 times slower than rendering that same page on my homebox (an AMD Athlon 1600 box running Windows XP). I wonder why that is. I wonder if I can improve this situation by using database connection pooling. If that does not help, I'm going to have to do some kind of page caching. 10 seconds to load a page is just not acceptible.
Tags: Roller

Welcome Shawn Dahlen

to the Roller project! Shawn contributed Blogger API support and a bunch of cool ideas for building up Roller in the "community server" area. Among other things, he suggested adding meta-data to each Roller website to help workgroups categorize and build directories of Roller websites, improving the very primitive newsfeed aggregation features, adding better access control, and supporting editor, guest, and administrator roles.
Tags: Roller

I'm back again

CQHost took me down for a while because I had misconfigured my web.xml and Resin was trying to write log files to the wrong place. It took a while to get back up and running, but now I'm back.

During the downtime, I configured connection pooling for Roller by using the MM MySQL JDBC driver's MySQLConnectionPoolDataSource and by configuring Castor and Velocity to look up their datasources via JNDI. The performance improvement is wonderful - I've gone from 15-20 second page loads to 2-5 second loads on rollerweblogger.org and down to 1 second page load on my homebox.

Tags: Roller

I'm back

CQHost is back up and running now. In other news, I removed the calendar and blogroll components from my page templates because they were too damn slow. Now I have 3-5 second page loads. Those components will be back once I figure out connection pooling and/or page caching.
Tags: Roller

« Previous page | Main | Next page »