Changes for page ERRest Boot Camp

Last modified by Pascal Robert on 2012/05/16 19:16

From version 10.1
edited by Pascal Robert
on 2012/05/02 15:09
Change comment: There is no comment for this version
To version 14.2
edited by Pascal Robert
on 2012/05/16 19:16
Change comment: Changed document parent to [xwiki:~probert.Home.WebHome].

Summary

Details

Page properties
Parent
... ... @@ -1,0 +1,1 @@
1 +~probert.Home.WebHome
Content
... ... @@ -1,9 +1,23 @@
1 1  * What is REST
2 2  ** Consistent URLs
3 +*** The goal is to have URLs that you can guess.
4 +*** GitHub is a good case (http vs git protocols, paths, etc.)
3 3  ** Stateless
6 +*** You can use sessions, but almost all client frameworks are stateless
4 4  ** Using HTTP protocol to full extend (methods, cache, status codes, headers, redirections)
8 +*** Status codes
9 +*** Verbs
10 +*** Headers
5 5  ** Multiple representations of same object, but only one URL for object
6 6  ** HATEOAS mention
13 +*** Google Docs, CMIS, Atom Publishing examples
14 +* Basic ERRest concepts
15 +** routes
16 +*** URLs
17 +** controllers
18 +** delegates
19 +** key filters
20 +*** filter what going's in and out
7 7  * Using an existing model and explaining how it works
8 8  ** BlogEntry
9 9  *** title
... ... @@ -12,10 +12,14 @@
12 12  *** dateModified
13 13  *** author
14 14  ** BlogAuthor
15 -*** name
29 +*** firstName
30 +*** lastName
16 16  *** password
17 17  *** email
18 18  *** entries
34 +** BlogCategory
35 +*** entries
36 +*** name
19 19  * Basic REST routes (JSON)
20 20  ** adding a migration to create the admin user
21 21  ** adding a BlogAuthor user
... ... @@ -31,6 +31,7 @@
31 31  ** listing authors
32 32  ** batching and sorting
33 33  * Better names: entity and attribute alias
52 +* Having a fake primary key in a REST context (moving from ID to unique title)
34 34  * Handling status codes
35 35  ** 200&201
36 36  ** 404&410
... ... @@ -44,24 +44,18 @@
44 44  * Adding headers to response
45 45  * Adding caching to the blog
46 46  * Adding non-EO support
47 -* Adding keys for non-model attributes
66 +* Adding keys for non-model attributes ("fullName")
48 48  * Date formats
68 +** er.rest.dateFormat
69 +** er.rest.timestampFormat
70 +** er.rest.rfcDateFormat
49 49  * JSON Schema
50 50  
73 +Talking about the problem of objectOfEntityWithID and ERXDatabaseContextDelegate.ObjectNotAvailableException
74 +
51 51  RestContext
52 -Properties
53 -JSON Schema
54 -HTML vs other formats
55 -Response representation
56 -Missing route
57 -Missing object
58 -POJO objects
59 -Headers
60 -Caching
61 -Adding new format
62 -Security
63 -strictMode
64 -Workflow
65 -Query arguments and ERXRestFetchSpecification
66 -ERXRestNameRegistry
67 -MapClassDescription / NSDictionaryClassDescription
76 + Properties
77 + Adding new format
78 + Security
79 + strictMode
80 + Workflow