Welcome to another installment of This Week in Spring! This week I'm in Bangalore, India, for the Great Indian Developer Summit talking to developers about (wait for it..) Spring! I also met with a large system integrator here in Bangalore's Electronic City and addressed a large team of architects and engineers using Spring on projects worldwide. India's an interesting place because so much of their business comes from companies abroad who are trying to get extra help on otherwise overwhelming projects. Naturally, anything that helps get more done, quicker, is of interest here and Spring's a favorite. Needless to say, Spring Boot resonated a lot! It's not all work, though, when the local food is as good as it is here! :)
Lots of webinars and replays this week - we've got a lot to cover, so let's get to it!
- Hadoop hungry? Get ready for a feast - Dr. Mark Pollack and the XD team have announced that Spring XD 1.0.0 M6 is now available. This new release has a TON of new features, including support running on YARN, Zookeeper support for the DIRT distributed runtime, machine-learning algorithms, improved shell tab-completion, a Reactor-powered TCP/UDP source that can do 1M+ tx/sec on cheap hardware, default FTP to HDFS job, and much more! (No, really, we mean that). This release felt more like they somehow skipped all the 1.0.x milestones and released a "2.0" version!
- Reactor project lead Jon Brisbin has announced, along with other engineers at Typesafe, Netflix, Twitter, and more, the new common API for reactive stream processing. This is huge!
- Spring Data lead Oliver Gierke has just announced that Spring Data Codd, service release 2, is now available. This new release is huge, so be sure to check them all out!
- Dr. Dave Syer has just announced the release of Spring Security OAuth 2.0.0.RC1. This project has evolved very quickly, and I've enjoyed updating the code to my talk, The Spring REST Stack, to use the progressively more concise and powerful iterations. I've updated that branch (still updating unit tests) to use Spring Security 2.0.0.RC1. It's a working OAuth-secured REST service that supports HTTP and HTTPS, can run standalone or as a traditional
.war, and uses a custom
UserDetailsService bean and Java 8 lambdas. Not bad!
- Spring Integration is looking at an incredible new release -- full support for Annotations and Java Configuration + some Spring Boot support! With 4.0, you'll be able to make XML - free integration applications. Project lead Gary Russell taking you through all the new hotness in the webinar, Spring Integration 4.0, the new frontier, on May 13.
- Chris Beams has put together another great post on the Sagan project, this one on moving to Java 8. Check it out!
- The replay for my recent talk, Building "Bootiful" Applications with Spring Boot, is now available on our YouTube channel.
- Spring Security lead Rob Winch is back with another post on advanced Spring MVC test integrations with common third party projects. This post is about testing web applications using Geb.
- Spring Data Neo4j lead Michael Hunger and I will be giving a webinar on the new awesome in Spring Data Neo4j 3.0 and Neo4j 2.0 on May 20th.
- Search on the brain? You have front row seats to 90 minutes with our former colleague and Spring committer Costin Leau, now at Elasticsearch: Your Data, Your Search, Elasticsearch.
- Don't miss Pivotal's Mike Wiesner as he tackles pragmatic Application Security (beyond just spring security) in this SpringOne2GX 2013 Replay: Application Security Pitfalls.
- Groovy language lead Guillaume LaForge's epic Groovy Weekly column is coming along nicely! There's always good stuff, and this week's no exception. Check it out if you dig all things Groovy (and Grails).
- This project, by Alexandre Rafalovitch, aims to improve the SOLR JavaDocs. There's a lot to admire here, but I liked this Spring Boot example which demonstrates a REST endpoint connected to a SOLR instance. Nice!
- Fabio Maffioletti has put together a very nice post that evolves the discussion on how to use JTA with Spring (in particular, with Spring Boot and Spring Data JPA) via Atomikos to coordinate transactions across two different databases. This post starts with an older post I wrote in 2011 on the same topic, introduces Spring Boot and Spring Data, and changes the example from one database and a JMS broker to a database and another database through JPA. This is really cool!
- Yuan Ji has been putting together very nice posts on building HAL-compliant REST services with Spring HATEOAS, unit testing them and - most recently - consuming those services with Angular-HAL.
- Our pal Brian Hannaway is back, this time with a post on building Spring Batch applications. The content is really good, and worth a read for anybody who wants to love and learn Spring Batch. In the post, Brian demonstrates how to build a Batch application using the XML namespace. Spring Batch also supports a very nice Java configuration API and - with Spring Boot - writing a Spring Batch application can be very concise. I took Brian's very cool example and wrote a different version using Spring Boot and the Java configuration API for reference. Definitely start with Brian's blog, though, as the code in my repository will make little sense otherwise!