September 20, 2007 | co.mments
"Mapping a message broker to REST and AtomPub turns out to be much harder than it looks."
I've held this position for years; and its more general than Atompub - the mismatch is with HTTP. I'm on the thread that James links to, but I'm fairly sure we talked about this a few years ago. You might have to go and build this out to see the impedance between a HTTP resource and a queue, but it's there. That impedance is one reason why the "feed" data structure, be it RSS or Atom has come to exist. Let's switch protocols. If you were to run a messaging service over XMPP, you'd find yourself dropping the feed structure as redundant and just slinging the entries.
I don't work on this kind of thing these days but the problem is still interesting. The secret to getting it done is to make sure the message exchange is a different resource to both the queue and the exchanged message. That's why HTTPLR is the way it is (I'm chuffed the ActiveMQ page on restful queues has a link to it).
At a quick glance I suspect the ActiveMQ guys are more or less there; I'd to see it explicit that the collection issues URLs for the exchanges and not the actual message content (this makes tracking easier). Messaging is a big deal and having something run over Atompub would justify an RFC.
September 20, 2007 07:55 PM