This example is a functional recipe book, with each recipe having an ingredient list and a free-form procedure (how to prepare) section rendered as Textile. The Ajax SearchPanel from the last example reports for duty in this one as well. Bookmarkable, “nice” URLs link to recipes from a PageSourceListPanel, and other kinds of Databinder 1.1’s new SourceList components are used to create navigation with less boilerplate code.
For persistence this application uses Hibernate Annotations. Above which, the `databinder-valid-hib` module contains a pass-through validator that checks form components against their properties using Hibernate Validator. The ValidDataForm class adds validators to components automatically.
Note the link to a DataBrowser on the example page. It’s available from any DataApplication in development mode, and here we’ve rigged it to work in deploment so you can take a peek. Try a “from Recipe”.
To edit recipes (and see the fancy live Textile preview) you’ll need to sign in. Not to protect the recipes but to demonstrate Databinder-assisted authentication. Register with a username and phony password, it’ll only take a sec.
Try this application and add an heirloom recipe. Someone’s already beaten you to the Currywurst, but there’s always asparagus with potatoes.
Now you know how to do everything. Well, everything but paginate a gazillion-row table. Cut loose and paginate some players.