[dna-issues] [JBoss JIRA] Commented: (DNA-55) REST-based API for remote access and usage

Randall Hauch (JIRA) jira-events at lists.jboss.org
Fri Oct 24 14:43:20 EDT 2008


    [ https://jira.jboss.org/jira/browse/DNA-55?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12435429#action_12435429 ] 

Randall Hauch commented on DNA-55:
----------------------------------

One of the things we want to develop for JBoss DNA is an ability to interface and interact with the repository using a RESTful API.  We should consider RESTeasy - no way do we want to implement our own RESTful library.

But there's more to a RESTful API than just picking an enabling library.  Perhaps the biggest task is actually designing the RESTful API.  This includes among other things the design of the URIs (e.g., what the URIs look like, how they map to the "resources" that exist in a repository, and how they different verbs map to actions on these resources), the representations of the resources and the choice of media types used by those representations (e.g., HTML, XML, JSON,etc.), and ensuring that the appropriate actions are mapped to the underlying resources.

For future reference, here are some interesting links:
- Recent post by Roy Fielding on what a REST API actually needs to be like: http://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven
- Roy's definition of "hypertext", which is more general than what most people probably assume: http://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven#comment-718
- Interpretation of Roy's REST API post (above): http://www.25hoursaday.com/weblog/2008/10/24/RESTAPIDesignInventMediaTypesNotProtocolsAndUnderstandTheImportanceOfHyperlinks.aspx
- Apache Sling: http://incubator.apache.org/sling

> REST-based API for remote access and usage
> ------------------------------------------
>
>                 Key: DNA-55
>                 URL: https://jira.jboss.org/jira/browse/DNA-55
>             Project: DNA
>          Issue Type: Feature Request
>          Components: Server, Web Application
>            Reporter: Randall Hauch
>            Priority: Minor
>             Fix For: Future Releases
>
>
> Create a DNA server that uses a REST-based API, allowing client applications to access and use the repository using HTTP for protocol/transport.  
> AtomPub is also very interesting (as it is RESTful) for a message structure, but it doesn't currently support hierarchical data.  And although one could build a repository to be flatter (or at least exposed though collections; see how Bento does it: http://www.filemaker.com/bento/), it may be difficult to have no way of interacting with the hierarchical data.  Bento and iTunes both show how powerful user-defined collections (and "smart collections") can be, so maybe adopting a collection-only approach would work (at least for remote access).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the dna-issues mailing list