git checkout demo-start
- Maven project, Lombok
- Spring 3.2, JavaConfig, Servlet 3
- Order slice, payment slice
- Show
Orderclass,OrderRepository - Show integration test
- Show
@EnableJpaRepositories - Explain proxy-mechanism, CRUD, finder methods, IDE support
- Show
WebApplicationInitializer,RepositoryRestMvcConfiguration - Bootstrap app via
mvn jetty:run - Show resource exported, navigate to orders, show finder method execution:
http://localhost:8080/orders/search/findByStatus?status=PAYMENT_EXPECTED - Note: future enhancement - link templates
- Show
http://localhost:8080/orders/schema
- Enable
CoreOrderResourceProcessor - Enable
OrderControllerEventListener - Show
cancelandupdatelinks are added, explainDELETEgets prevented
- Explain
PaymentService - Explain
PaymentController(esp.submitPayment(…)) - Hook link into
Orderresource ifOrderis inPAYMENT_EXPECTEDstate - Show
PaymentOrderResourceProcessor
- Integration tests required Servlet container running
- Spring 3.2 introduced MVC test framework (mocks for
ServletContext,HttpServletRequest,…Response) - Show
PaymentProcessIntegrationTest.beforeClass(…) - Walk through
processNewOrder(…)