Using the innovative Groovy template engine in Spring Boot

With the release of Spring Boot 1.1.0.M2 came the support for the new template engine that Groovy 2.3 provides. In this post, we will describe the benefits of using such an engine and of course how you can use it in Boot.

All the source code in this post is available on GitHub, so feel free to clone the repository and give it a try:

git clone https://github.com/melix/springboot-groovytemplates.git
cd springboot-groovytemplates
./gradlew run

Then open your browser on http://localhost:8080

This application is fully written in Groovy and also makes use of GORM for Boot, but it is of course possible to use Groovy only for the templating part and write the rest of the application in Java. Starting from now, we will only focus on the templating aspect of this project.

Read more...

Webinar Replay: Data-Driven Applications with Spring and Neo4j

Speakers: Michael Hunger, Josh Long

Slides: https://speakerdeck.com/jexp/spring-data-neo4j-and-spring-boot

Spring Data Neo4j 3.0 is here and it supports Neo4j 2.0. Neo4j is a tiny graph database with a big punch. Graph databases are imminently suited to asking interesting questions, and doing analysis. Want to load the Facebook friend graph? Build a recommendation engine? Neo4j's just the ticket. Join Spring Data Neo4j lead Michael Hunger (@mesirii) and Spring Developer Advocate Josh Long (@starbuxman) for a look at how to build smart, graph-driven applications with Spring Data Neo4j and Spring Boot.

Read more...

This Week in Spring - May 27th, 2014

Welcome to another installment of This Week in Spring! Here in the States we had a 3-day weekend, which was nice. Good chance to watch some of those amazing tech talks! If you're like me, you've run out of tech talks, and will be glad to see that we have a lot more going up today!

  1. Grails project lead Graeme Rocher just announced Grails 2.4! The new release is amazing for a slew of reasons, not the least of which is that some of its many amazing features are easy to use with Spring Boot, too. Double win! Congratulations, Graeme and team. (And also thank you, for another amazing release!)
  2. Spring Boot 1.1.0.M2 is now available! The new release features improved support for Spring Data Solr, Spring Data Gemfire, and the entire Spring Data Dijkstra release train. The new release also offers GSP (Groovy Server Pages) and Velocity as templating options, along with upgrades to various libraries like Spring Security 3.2.4, and Spring Batch 3.0. This release train is moving quickly, so jump onboard while you can! There's a lot more great stuff, so check out the release notes.
  3. June webinars are here! Ramnivas Laddad on launches Spring Cloud on June 3rd in Abstracting PaaS services to be portable with Spring Cloud, Michael Minella in Spring Batch 3.0.0 on June 10th, and Glenn Renfro in Spring Integration Done Boot-ifully on June 17th.
  4. This blog introduces some of the limitations of Hibernate's inbuilt JDBC logging and then introduces log4jdbc as used in a simple Spring / Hibernate application.
  5. Our pal Eugen Paraschiv has put together a very nice introduction to Spring Data JPA.
  6. Matti Tahvonen over on the Vaadin team put together this fantastic introduction to using Spring Data Neo4j, Spring Boot, and of course the Vaadin4Spring library that Petter Holmström and I started. To be fair, it's only usable because of Petter :) So usable, in fact, that Matti was able to put together something beautiful - Bootiful - very quickly. Check it out! The application models (and visualizes!) data stored in Neo4j, so it's not just any old CRUD application, this is very cool!
  7. CloudFoundry ninja James Bayer announced the new Pivotal CF 1.2, which now supports VMWare's Hybrid Cloud Service, initial auditing and autoscaling, new data services (Redis, MongoDB, Neo4j, RiakCS, and ElasticSearch are all available!), and a lot more!
  8. Curiousity piqued? Want to learn more about CloudFoundry, the open-source Paas from Pivotal? Check out this epic video on how to setup your own Paas using BOSH from SpringOne2GX 2013. And hear about how other teams acutally did it in the SprignOne2GX replay - Free Yourself with CloudFoundry: A Private Cloud Experience.
  9. Data ninja Thomas Risberg just announced the new Spring for Apache Hadoop RC4 release, which is awesome! The new release improves upon the Spring YARN integration. YARN, of course, is the distributed, generic runtime on top of which Hadoop 2.0's very specific map/reduce support now sits. You can use YARN for job distribution of your own, however. You might, for example, use YARN to split up Spring Batch workloads. In the new example, Janne Valkealahti demonstrates a simple Spring Boot-powered Spring YARN component. It's amazing how concise this stuff is now!
  10. Want to learn more about Janne Valkealahti, the mad (data) scientist behind our Spring YARN support? Check out this Pivotal People profile!
  11. Spring Data lead Oliver Gierke does a nice job introducing the new hotness in Spring Data Dijkstra, the new Spring Data umbrella release. This release includes Java 8 Optional support, asynchronous repository method invocations, and more.
  12. Spring Security lead Rob Winch has just two small, bugfixe releases: Spring LDAP 2.0.2, and Spring Security 3.2.4
  13. Spring Web Services lead Arjen Poutsma has just announced Spring Web Services 2.2.0, which now features a Java configuration API and much more.
  14. Let me take a moment to remind everyone: Java configuration is everywhere! Spring framework, Boot, Data, Security, MVC, Integration, Batch, Social, and much more, all offer as-rich-as-the-XML Java configuration integrations. In the case of Boot, Java configuration is the only out-of-the-box option, though of course you can use XML if you'd like. It's just.. not expected.
  15. Spring Security lead also blogged about using Spring Security Test to handle web security
  16. Want to write your own Spring Boot starter? Check out this example from Spring ninja Stephane Nicoll on how to provide a HornetQ starter for Spring Boot
  17. At long last, Spring Social Google 1.0.0.GA has been released! Congratulations, Gabriel, on all the work required to arrive here. I like the easy-to-use example, too.
  18. Arnaud Giuliani has put together a very cool look at using GWT with Spring Boot. Nicely done, Arnaud!
  19. Netflix engineer Tomas Lin tweeted a link to a convenient Spring MVC exception handler for REST APIs. This is one (fine) way to approach the problem. As an alternative, I'd suggest you take a look at [using Spring HATEOAS' VndError(s) support]a).
Read more...