A new plugin, Spincast JDBC plugin is available! Using this plugin, you have access to :
named parameters
support.
null
support compared to plain JDBC.
A full documentation section "JDBC / SQL" is dedicated to the features this plugin provides.
A new section on how to configure a Spincast application is now available.
In this section, you will learn how to make the configurations externalizable, so they can have different values depending on the environment the application runs on....
A tutorial video has been posted on Youtube : Spincast Framework application from scratch in under 3 minutes.
Please watch in 1080p to see the code clearly!
This release is all about bootstrapping a Spincast application. This process has been greatly improved and the creation of the Guice context associated with an application is now easier. A new component, the Bootstrapper, is at the core of this process.
Here's a fully working "Hello World!" Spincast application :
public class App { public static void main(String[] args) { Spincast.init(args); } @Inject protected void init(DefaultRouter router, Server server) { router.GET("/").handle(context -> context.response().sendHtml("<h1>Hello World!</h1>")); server.start(); } }
Speaking of "Hello world!" applications, you can now find three of them in the "Demos / Tutorials" section! :
Finally, we introduced a new section in the documentation dedicated to plugins : what they really are, how to install them, etc.
This release is huge. We have been working on it for more than 3 months now. The last released version of Spincast contained approximately 800 tests, there are now over 1600!
The core of this release is about HTML Forms and Validation. There's a lot more than that, but those are the two big novelties.
Try the new demos
Spincast supports Json
and XML
out of the box since day one, so
developing a Single Page Application
or a set of REST services
has always been easy. But, even if SPAs
are very popular
these days, any serious web framework must provide excellent support for traditional websites too, where the server
generates the HTML
to render.
As long as you integrate a good Templating Engine, providing
HTML generation functionalities is not too hard.
What's more challenging is to provide a good experience when it's time to deal with forms
and
their validation... And we think we hit the nail on the head! Spincast now provides an easy way to validate
a submitted form and to redisplay it with Validation Messages
resulting from the validation, when this is required.
Another big change in this release is about JsonObjects : they are now more powerful than ever and they are used pretty much everywhere in Spincast. We added to them a feature we call JsonPaths : this makes retrieving an element, inside an element, inside an array, inside an element, as simple as :
Date myDate = myJsonObject.getDate("user.books[3].publishingDate")
.
We also added a small Quick Tutorial section which is a
high-level view of the main steps involved when building an application using Spincast. And, finally, we cleaned a lot
of code, which now follows more closely Java's standards (no more "I"
prefixed interfaces!).