Over a million developers have joined DZone.

Uniscala Granite: A Wicket/db4o/Scala Web Stack

· Java Zone

Microservices! They are everywhere, or at least, the term is. When should you use a microservice architecture? What factors should be considered when making that decision? Do the benefits outweigh the costs? Why is everyone so excited about them, anyway?  Brought to you in partnership with IBM.

Interested members of the Scala community are apparently knocking down Sustainable Software Pty's door to find out about their new innovative web framework, which isn't even ready for release yet.  The Sustainable Software Blog was obliged to quench the community's thirst for details with an early unveiling of the project called Granite.

Granite will rely on another Sustainable Software project called Uniscala, which is a set of Scala libraries for developing business applications.  Uniscala Topaz, an identity management application, will also rely on Uniscala.

Uniscala Granite will be a lightweight framework based on Apache Wicket, a very popular Java web framework.  Granite also uses db4o, an embedded object database that doesn't require SQL or ORMs.  The developers say that "in the Wicket tradition," they are proud, "if not smug about," the framework's lack of external XML config files.

The framework won't be designed for very large, highly-scalable systems (i.e. Facebook, Twitter), but it will work great for building online shops, membership databases, staff directories, and other systems.  It should also benefit from settling on one specific database and not trying to abstract over many different databases.  Granite persistence will be simpler and it will be able to take advantage of the deeper features of db4o.  Using db4o also means that there's no database to configure when you deploy, so you can have Granite up and running quickly.  Just build it in Maven and drop it in to a container like Tomcat or JBoss, or run with a stand-alone server.

db4o is licensed under dOCL, which should allow Granite to be under an Apache 2.0 license.  If the license is intractable, developers may switch to another database.

Lastly, we can't forget about one more important library in the Granite stack: jQuery.  The world's most popular JavaScript library will be included by default in every Granite application.  The Wiquery extension gives jQuery tight integration with Wicket.  Also, JQuery UI's ThemeRoller themeing is being used intensively.

You can check out the quick start guide if you want to start playing with the code.  More documentation and a framework release are in development.

Discover how the Watson team is further developing SDKs in Java, Node.js, Python, iOS, and Android to access these services and make programming easy. Brought to you in partnership with IBM.

Topics:

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

SEE AN EXAMPLE
Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.
Subscribe

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}