This example app is a client for a library REST service. You can search for books and view the details of found books in a master-detail view.
This example was used for a talk at the JavaUserGroup Görlitz on UI-Design patterns.
Originally this app was created by Stefan Bley and Alexander Casall for a talk on Hypermedia-APIs.
By default this examples uses an inmemory backend were the books are stored in a simple Set.
This is for easy testing and for people who don't like to download and setup the REST backend.
The example can also be used with a "real" REST-Backend that Stefan Bley has used it for his talk. To setup the app with the REST-Backend follow these steps:
- git clone the hypermedia server from https://github.com/sbley/hypermedia-library-server
- open up a command line and change into the cloned directory
- run
mvn clean installto build the hypermedia server - run
mvn wildfly:run. This will download the server runtime and startup the server automatically.
After a few seconds you will see a message like "... Deployed "ear-0.0.1-SNAPSHOT.ear" ...". This means everything is ok and the server is running.
To tell the client application to use the REST-Backend instead of the immemory mock backend you have to change the flag
ENABLE_MOCK_SERVICE
in the class de.saxsys.mvvmfx.examples.books.App to false.
Now you can start the client app de.saxsys.mvvmfx.examples.books.App and play around with the example.
The app uses the following libraries (among others):
- FontAwesomeFX // Icons
- FlatterFX // Styling
- Advanced-Bindings // Binding-Utils
- EasyDI // Dependency-Injection
- AssertJ-JavaFX // Testing
- HALBuilder // REST-Client
- TestFX // Integration-Test
