diff --git a/spring-framework-reference/src/rest.xml b/spring-framework-reference/src/rest.xml deleted file mode 100644 index 4cb2eb60672..00000000000 --- a/spring-framework-reference/src/rest.xml +++ /dev/null @@ -1,82 +0,0 @@ - - - - REST support - -
- Introduction - - The goal of Spring's REST support is to make the development of - RESTful Web services and applications easier. - - Client-side access to RESTful resources is greatly simplified using - Spring RestTemplate. - RestTemplate follows in the footsteps of other - template classes in Spring such as JdbcTemplate and - JmsTemplate. Instead of dealing with a verbose - lower level API such as Apache Commons HttpClient - to create RESTful request, RestTemplate provides one liner methods that - are purpose built for RESTful programming. - - On the server-side, Spring's REST support is based upon Spring's - existing annotation based MVC framework. (For those interested in the - rational for that decision, and for not implementing JAX-RS, read Arjen - Poutsma's SpringSource TeamBlog entry.) - With little effort, you can marshall data out of a RESTful request using - @RequestMapping and - @PathVariable annotations and return different - views as determined by the request's Context-Type - header. - - In this chapter we describe all the features of Spring's REST - support. It is divided into two main chapters, one for the server-side and - one for the client-side. For those new to Spring's MVC - framework, you may want to read through the reference documentation - on annotation-based controller - configuration to understand the general programming model. -
- - -
- ETag support - - An ETag (entity tag) - is an HTTP response header returned by an HTTP/1.1 compliant web server - used to determine change in content at a given URL. It can be considered - to be the more sophisticated successor to the - Last-Modified header. When a server returns a - representation with an ETag header, the client can use this header in - subsequent GETs, in an If-None-Match header. If the - content has not changed, the server will return 304: Not - Modified. - - Support for ETags is provided by the servlet filter - ShallowEtagHeaderFilter. Since it is a plain - Servlet Filter, and thus can be used in combination with any web - framework. The ShallowEtagHeaderFilter filter - creates so-called shallow ETags (as opposed to deep ETags, more about - that later). The way it works is quite simple: the filter simply caches - the content of the rendered JSP (or other content), generates an MD5 - hash over that, and returns that as an ETag header in the response. The - next time a client sends a request for the same resource, it uses that - hash as the If-None-Match value. The filter notices - this, renders the view again, and compares the two hashes. If they are - equal, a 304 is returned. It is important to note - that this filter will not save processing power, as the view is still - rendered. The only thing it saves is bandwidth, as the rendered response - is not sent back over the wire. - - Deep ETags are a bit more complicated. In this case, the ETag is - based on the underlying domain objects, RDMBS tables, etc. Using this - approach, no content is generated unless the underlying data has - changed. Unfortunately, implementing this approach in a generic way is - much more difficult than shallow ETags. Spring may provide support for - deep ETags in a later release by relying on JPA's @Version annotation, - or an AspectJ aspect. -
- - -
diff --git a/spring-framework-reference/src/spring-framework-reference.xml b/spring-framework-reference/src/spring-framework-reference.xml index 1815f40b02a..513713791f2 100644 --- a/spring-framework-reference/src/spring-framework-reference.xml +++ b/spring-framework-reference/src/spring-framework-reference.xml @@ -264,9 +264,6 @@ - - - @@ -277,7 +274,6 @@ -