apache apachecon app apple asf atom atomprotocol atompub barcamprdu blogapps blogging businessblogging conferences family feeds foss general glassfish google humor ibm java javaone links linux mac microsoft movies music netbeans opensocial opensource photos politics rest roller rome rss socialnetworking socialsite socialsoftware sun triangle trianglebloggers vacation webdev webservices wiki
BlogClient
is an experimental blog client library designed
to make it easy to write Java programs that blog. It supports both Atom and XML-RPC based protocols. I wrote BlogClient
for the new Manning book Blogs, Wikis, and Feeds In
Action, which is due for
release this Spring. I'm not quite done but I am ready to get some
feedback, so please download BlogClient,
try it out in your own programs (or try the test GUI), and let me know how I can make it
better.
How does it work?
The
idea is to define a couple of simple interfaces for the objects we need
to blog, such as a BlogClient, BlogSite, and BlogEntry. Then, provide
implementations of those interfaces for the different protocols. The
diagram below shows the interfaces and classes that make up the Blog
Client API. Right now, I have two implementations of the
interfaces. I have an AtomBlogClient, that is based on the Atom
protocol and a
MetaWeblogApiClient that is based on a combination of the MetaWeblog and Blogger APIs.

BlogClient client = new MetaWeblogApiClient(As you can see, some improvements could be made in API usability. Let me know how you'd like to see the API work. Oh, and those jars I mentioned:
"http://jroller.com/xmlrpc", "scott", "tiger");
String[] sites = client.getUserBlogs();
BlogSite site = client.getBlogSite(sites[0]);
BlogEntry entry = site.createEntry();
BlogEntry.Content content = new BlogEntry.Content("Hello blog world!")
entry.setContent(content);
entry.save(true);
| New Entry |
Edit Entry |
Delete Entry |
Get Entries |
New Resource |
Get Categories |
Set Category |
|
| Roller 1.1 XML-RPC | X |
X |
X |
X |
X |
X |
X |
| Roller 1.1 Atom | X |
X |
X |
X |
X |
** |
** |
| Blojsom XML-RPC | X |
X |
X |
X? |
X |
X |
fail |
| Blojsom Atom | X |
X |
X |
X |
fail |
** |
** |
| Pebble XML-RPC | X* |
X* |
fail |
X |
fail |
X |
X |
| Movable Type XML-RPC | X |
X |
X |
X* |
fail |
*** |
*** |
| Das
Blog XML-RPC |
This work is licensed under a Creative Commons License.
Copyright 2002-2007, David M Johnson (dave.johnson at rollerweblogger.org)
This is a personal weblog, I do not speak for my employer.

Buy now from Amazon.com
Or direct from Manning
| « January 2005 » | ||||||
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|---|---|---|---|---|---|
2 | 4 | 8 | ||||
9 | 10 | 13 | 15 | |||
16 | 21 | 22 | ||||
23 | 24 | 26 | ||||
30 | 31 | |||||
| Today | ||||||
Allen Gilliland
Anil Gangolli
Dan Axon
Danese Cooper
Film Babble Blog
Geertjan's Weblog
Henri Yandell
James Robertson
Jim Grisanzio
Josh Staiger
Linda Skrocki
Pat Chanezon
Rama
Ruby Sinreich
Simon Phipps
Tim Bray
Will Snow
Janne Jalkanen
Joe Gregorio
Matt Raible
Mike Cannon Brookes
Rafe Colburn
Sam Ruby
Simon Brown
My other sites