As you have noticed, it is not possible since several years ago to export your data (posts ans comments) from JRoller. Being able to backup soothes the mind, and allows you to move your blog more easily (in case you want to leave and there is something to import the data at the other side). Having checked two days ago for the last time, I did not find anything to do that easily... being on J(ava)Roller, there's no reason I can't code that. What I want for this micro-project is:
  • Maven 2
  • JUnit
  • Xerces 3
  • Rome
  • Glassfish
  • commons-genitalia

Indeed, in order to do the first backup, I don't really want to have to download 30MB of dependencies to start with. So, the real requirements are:

  • JRE 1.5
  • an Atom feed for your blog

How does it work? Download BackupJRoller.zip, you will find inside: license (GPL), template (jroller_atom_feed.tpl) for the Atom feed, and the Java class (com.jroller.kame.BackupJRoller) in source and binary forms. Go inside your blog configuration, tab Preferences, sub-tab Templates, create a new template (Add a new template) named for instance tetsuwan. Find your new template in the list, note its URL path in the Link column (in the example, it's tetsuwan as well), and edit it. In the Template textarea, copy and paste the content of jroller_atom_feed.tpl, and Save.

You're ready to export! As you are hosted on JRoller, you are a Java pro, and the command line has no secret for you. Open a shell, change to the right directory (hint, where you unzipped the zip), and type the following line, with the right values:

java -classpath . com.jroller.kame.BackupJRoller http://www.jroller.com/page/your_login/tetsuwan

After that, everything went without a hitch, you have your backup! What can you do with it now? Unfortunately, not many tools are useful for the moment. You have this big XML file in Atom 1.0 with all your posts and comments, and it's up to you to do something useful with it :-) Don't forget to clean your JRoller cache after the backup (Preferences > Maintenance > Flush Cache), this data doesn't need to linger.

From a techical point of view, the source code is fully undocumented, in mixed French-English, and loaded with cultural private jokes. But if you're proficient in Java, there is nothing there to stop you, as it is a straightforward use of the standard Java API. It has been developped with the ultimate IDE: GNU Emacs + JDEE.