I’ve linked to them from the Restful Objects website.
Work continues on the Restful Objects spec, which aims to define a set of RESTful resources, and corresponding
representations, for accessing and manipulating a domain object model.
Recent significant changes include a full description of how to use view models to encapsulate the domain entities while preserving the RESTful HATEOAS principle, and support support for blobs/clobs, in other words media types such as application/pdf, image/jpeg etc.
Feedback always welcome.
In the previous post I showed some screenshots of the simple JQueryMobile app that is hosted by the Apache Isis‘ online demo app, demonstrating one way of using the built-in Restful API. In this post, I want to look at the JQueryMobile code in a little more detail.
Read the rest of this entry
We’re currently working towards 0.2.0 of Apache Isis (incubating), and one of the most significant new areas of functionality is the REST API that it automatically provides through the json-viewer component. As you can probably guess from the name, this viewer provides a REST interface which exposes JSON representations of the domain object models.
I’ve started looking into using jQTouch to build a custom UI against a Restful Objects back-end hosted in UI. These are my own notes; apologies but I haven’t annotated them…
Since my last post there’s been a couple more updates to the Restful Objects spec.
Restful Objects defines a set of RESTful resources, and corresponding representations, for accessing and manipulating a domain object model. The most up-to-date version of this specification may be downloaded from http://restfulobjects.org; as of now I’m up to v0.51.
Noteworthy changes since my last post include:
I’ve just uploaded an update – v0.47 – to the Restful Objects spec, which you can download from http://restfulobjects.org.
Noteworthy changes in this version include:
- restructured the first few chapters, in particular explicitly addressing how RO spec allows client/server to evolve separately, and refining the previous discussion about resources that represent private state vs those that represent shared state
- separated out Restful Objects’ use of existing standards vs its use of custom query parameters and standard json-properties in its representations
- moved the chapters defining the domain object representations into the chapters that define the domain object resources; the hope is that it makes the document easier to follow
- added a new “Error” representation
As ever, any constructive feedback is welcomed.
The Restful Objects spec drew some criticism on twitter today. I’m quite happy to get feedback so long as its constructive. Of course, the ‘net being the ‘net, that ain’t always the case. Oh well. [UPDATE: the replies to this post so far *have* been constructive... my thanks]
Since 140 characters isn’t really enough to drill down into issues and concerns, I thought I’d post some of the criticism here and attempt to answer the points. It’d be nice to think I may get some comments against this post which could help develop the spec, rather than summarily dismiss it. Whether that happens, we shall see.
Anyway, on with the criticism…
Been continuing to work on the Restful Objects spec, which aims to defines a set of RESTful resources, and corresponding JSON representations, for accessing and manipulating a domain object model.
I’ve just uploaded the current draft (v0.22) up to the Restful Objects site. There have been numerous changes since the last version, not least of which is the set of resources that it defines (see left).
Another change is that the spec now explicitly indicates that it is agnostic as to the nature of the server-side state that it exposes, in that it may be used either to expose domain entities (Customer, Order, Product) or may be used to expose use cases/commands (CheckIntoFlight, CancelOrder). So, irrespective of which view you have of how to do REST, Restful Objects aims to provide useful support.
Anyway, if any of this sounds of interest, head over to the Restful Objects site to download the latest version of the spec.
Have been continuing to develop the Restful Objects specification, which aims to map a RESTful API onto a domain object model.
The restful objects site now highlights the broad concepts, but I’ve moved the main content out into a Doc/PDF so that it’s easy to edit and to print out as a single entity. There’s also a nice little diagram showing the resources defined by the spec:
The idea of Restful Objects is to provide a standard, generic RESTful interface for domain object models, exposing representations of their structure using JSON and enabling interactions with domain object instances using HTTP GET, POST, PUT and DELETE.