Integration · home-grown app
A Spring stock app, left by an earlier provider.
The whole stock must be read, every night.
Demo application and data
The problem
The API does not give the id.
- The SKU is only in each product's link.
- The links name the server's internal host.
What is not changed
The application's code stays as it is.
- One deployment property: trust the proxy.
- No field added to the API.
What had to be written
pagination: { kind: spring-hateoas, items: products }
unique_key: { path: $._links.self.href,
transform: last_path_segment }Name the framework, say where the key is.
One 24-line connector.
Red
Page 2 points at inventory:8080: the run refuses.
- It names the internal host.
- No partial list reported green.
Green
1,250 products, 63 pages, keyed by SKU.
- The next night: 1,250 rows, 1,250 keys.
- Moving to https would change no key.
The limit
The link must end with the id.
- Spring Data REST does so by default.
- A link with no segment fails the run, naming the key.
Try it
The scenario replays locally.
A real Spring Boot application, a real nginx, every step published with its output.