Chapter 24. Examples for Chapter 10
In Chapter 10, you learned about many of the concepts of HATEOAS and how to use JAX-RS to add these principles to your RESTful web services. In this chapter, you’ll look through two different examples. The first shows you how to introduce Atom links into your XML documents. The second uses Link headers to publish state transitions within a RESTful web service application.
Example ex10_1: Atom Links
This example is a slight modification of the ex06_1 example introduced in Chapter 21. It expands the CustomerResource RESTful web service so that a client can fetch subsets of the customer database. If a client does a GET /customers request in our RESTful application, it will receive a subset list of customers in XML. Two Atom links are embedded in this document that allow you to view the next or previous sets of customer data. Example output would be:
<customers><customerid="3">...</customer><customerid="4">...</customer><linkrel="next"href="http://example.com/customers?start=5&size=2"type="application/xml"/><linkrel="previous"href="http://example.com/customers?start=1&size=2"type="application/xml"/></customers>
The next and previous links are URLs pointing to the same /customers URL, but they contain URI query parameters indexing into the customer database.
The Server Code
The first bit of code is a JAXB class that maps to the <customers> element. It must be capable of holding an arbitrary number of Customer instances as well as the Atom ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access