Josh Long

Josh Long

Josh (@starbuxman) is the Spring Developer Advocate at Pivotal and a Java Champion. He's host of "A Bootiful Podcast" (https://soundcloud.com/a-bootiful-podcast), host of the "Spring Tips Videos" (http://bit.ly/spring-tips-playlist), co-author of 6+ books (http://joshlong.com/books.html), and instructor on 8+ Livelessons Training Videos (http://joshlong.com/livelessons.html)

Recent Blog posts by Josh Long

This Week in Spring (SpringOne2GX 2014 edition!) - September 9, 2014

Engineering | September 09, 2014 | ...

Welcome to another installment of This Week in Spring, live from SpringOne2GX 2014! This year's show is something to behold! We kicked off the show yesterday with one amazing keynote here in the "lone-star state" featuring Pivotal SVP of engineering Hugh Williams, the Spring team leads Juergen Hoeller, Dave Syer, Graeme Rocher and and Netflix's Andy Glover.

We'll do some recap blogs, of course, so stay tuned. Before we get started with this week's roundup, check out this video of the SpringOne2GX 2014 logo being projected onto the Dallas Omni hotel!

!{iframe width="420" height="315" src="//www.youtube.com/embed/9sQZItUcokA" frameborder="0" allowfullscreen}{/iframe}

And, while this is nothing like what the recording (which'll be available soon, anyway..) or even a well-written recap (stay tuned! Also coming..) would be, here are some choice tweets from last night's keynote to whet your appetite:

Indeed, even the week leading up to SpringOne2GX has been epic as the team's busily been releasing new, exciting bits for us to use! This week's roundup is packed with good stuff.

  1. Just in time for SpringOne2GX, Spring lead Juergen Hoeller has just announced that Spring 4.1 is now available! The new release is packed with great stuff including JMS annotations, comprehensive JCache (JSR 107) support, new Spring MVC views, websocket refinements, improved performance, and much more!
  2. Spring Boot co-lead Phil Webb has just announced Spring Boot 1.2.0.M1, hot on the heals of Spring Boot 1.1.6. 1.1.6 is a bug-fix that's highly recommended. 1.2.0.M1, on the other hand, is the first milestone of the very exciting 1.2 Spring Boot release. It's packed with new features: JTA support, easier consumption of JNDI-bound resources (a nice feature in its own right, but especially convenient in light JTA!), auto-configuration for the Spring Cloud PaaS connectors, easy SSL termination with Tomcat and Jetty, and improved metrics for DataSources and health indicators.
  3. Spring Data lead Oliver Gierke has just announced that Spring Data Evans has gone GA! The new release is crammed full of features! Redis Sentinel, ALPS and excerpt projections, multi-store configuration, a baseline of Spring 4.0, support for top and first as keywords in derived queries, MongoDB 2.6 full text, and much more.
  4. Continuing the data theme, Spring for Apache Hadoop ninja Thomas Risberg has just been released. The new release adds support for append-mode store writers, kerberos configuration for secured clusters, container grouping and clustering in Spring YARN, and it remains compatible with Hadoop 2.0+, Pivotal HD 2.0, Cloudera CDH5, and Hortonworks 2.1.
  5. I'll be giving two webinars soon: one on building microservices with Spring on September 16th, and the other on using the Activiti workflow engine with Spring on September 23rd. Register now and bring your questions, comments and more! We'll have lots to talk about and it should be a lot of fun!
  6. One of my heroes, Spring Integration ninja Artem Bilan has just announced the Spring Integration Java configuration DSL milestone 3. The blog has a list of the (many) new features and supporting code. I couldn't do it justice here, just check it out.
  7. Spring ninja and all-around-nice guy Andy Wilkinson has just announced the release of the Spring IO platform 1.0.2 release. The new release incorporates many new projects, so be sure to check it out. The Spring IO platform is an attempt at harmonizing dependencies across the many Spring projects so that, from the perspective of the dependency consumer, there's never any conflicts with common libraries.
  8. Spring Integration lead Gary Russell has just announced Spring AMQP (for Java) 1.4 milestone 1. The new release includes annotation support (@EnableRabbit) and annotation-driven message listeners (@RabbitListener). Huzzah! This mirrors the similar support for JMS in Spring 4.1.
  9. Artem is not here this week at SpringOne2GX for sad, complicated reasons (we miss you Artem!), but that didn't stop him from making quite a splash this last week first with the Spring Integration Java configuration DSL release (see above) and now the Spring Integration 4.1 Milestone 1 release. The Spring Integration release includes a lot of cool features, including the migration of common types to Spring 4 itself, performance improvements, the introduction of the Spring 4.1 SpEL compiler, web socket adapters (yes, web socket adapters!), http://github.com/projectreactor, a Boon-powered JSON mapper, an implementation of the EIP splitter pattern that can return an Iterator for results (and, thus, can stream them).
  10. Our pal Matt Raible took a look at using the Spring Boot-powered JHipster project. He hit some rough patches, but the blog provides all sorts of good information on how he got around it so that you can avoid them and really fly!
  11. The Blog4Java blog (run by our pal Javier Barquero) has a follow up post to his look at using Spring Batch
  12. And, of course, what SpringOne2GX would be complete without the annual press-release?
  13. There's an interesting post on the Chariot Solutions blog on converting a Spring Boot application from Java to Scala - definitely worth a look. Interestingly, it doesn't seem like you gain all that much over just using Java 8 in this particular example...
  14. Are you in the Dallas Fort Worth area? Since we're throwing SpringOne2GX 2014 in Dallas, we thought we'd take a moment to round up some.. ok a lot.. of the Spring team and head on over to the local Java user group (called the "Java Metroplex Users Group," or Java MUG for short) and say hi. I hope you'll consider joining us for what promises to be a really fun night!

This Week in Spring - September 2nd, 2014

Engineering | September 03, 2014 | ...

Welcome to another installment of This Week in Spring!

This is the last installment of TWiS before SpringOne2GX 2014 kicks off next week! I, personally, am very excited! I can't wait to see you all there. This is going to be so much fun. So, let's get on to it!

This Week in Spring - August 26th, 2014

Engineering | August 26, 2014 | ...

Holy cats! Can you believe how close we are to SpringOne2GX? Last year we made a huge splash with the announcements of Spring Boot and Spring XD, both of which have recently hit 1.0 releases. I happen to know the next level looks like, and you're going to want to see it. Register now if you haven't already!

This Week in Spring-19th August 2014

Engineering | August 19, 2014 | ...

Welcome to another installment of This Week in Spring! It's a few weeks before SpringOne2GX 2014, already! Time sure flies when you're having fun! The beginning of 2015 will mark the 4th year of This Week in Spring, and it's more exciting every week! I'm hoping to see as many of you as possible at SpringOne2GX 2014. This is sure to be an amazing event.

Anyway, with that out of the way, let's get on to this week's roundup!

  1. Spring Security lead Rob Winch just announced Spring Security 4.0.0.M2, which

provides a lot of great features, including improved Security-aware testing support, Spring Data integration, support for websocket security, and ties into the nascent Spring Session projet that was derived from the work for this release. Check it out! Rob also announced Spring Security 3.2.5 and 3.1.7

This Week in Spring - August 12th, 2014

Engineering | August 13, 2014 | ...

Welcome to another installment of This Week in Spring. We've got a lot of cool stuff happening and, as you might imagine, the entire team is abuzz in preparation for SpringOne2GX 2014, coming in just a few short weeks! If you haven't registered, now's the time to do so!

  1. Spring Security lead and all-around sleepless ninja Rob Winch has just announced that Spring MVC Test HtmlUnit 1.0.0.M2 has been released. This is an awesome release if you're trying to unit test real pages with Spring MVC
  • Spring Boot 1.1.5 has just been released. The new release mainly addresses a few issues and is a recommended upgrade for all users.
  • I really enjoyed this blog, ¿Qué es Spring Framework?, which tries to explain what the fundamental value of Spring is. Largely, the (Spanish language) article explains that Spring handles the lifecycle for objects in a consistent way. It's easy to plug in various frameworks, software, around the edges when the fundamental life-cycle is handled. I would point out that this post uses Spring…

This Week in Spring - August 5th, 2014

Engineering | August 06, 2014 | ...

Welcome to another installment of This Week in Spring! As usual, we've got a lot to cover so let's get to it.

  1. Spring Cloud lead Ramnivas Laddad has written up a nice post that looks at how to extend Spring Cloud to consume other services in a consistent manner.

This Week in Spring (Spring XD Edition) - July 29th, 2014

Engineering | July 29, 2014 | ...

Welcome to another installment of This Week in Spring! This week saw the release of the amazing Spring XD 1.0.0.RELEASE. The release announcement is a good place to start your big-data journey. There, you'll find links to other great posts, learning content, etc. This is a great opportunity to evaluate what you hope to get out of your data, and whether you're getting it. Spring XD is your big-data Swiss-army knife: it can support live, streaming workloads; batch-centric offline workloads; and general data integration solutions. If you digest but one post from this week's roundup, let it be

This Week in Spring - July 22nd, 2014

Engineering | July 23, 2014 | ...

Welcome to another installment of This Week in Spring! This week we're at OSCON in beautiful Portland, OR! It's been a crazy busy week, and only figures to be busier! It's been nice visiting with colleagues and community members alike. The booth on the expo floor has been flooded with users. I love this show. :)

  1. First, the big news: the Spring framework 4.1 release candidate is now available! The new release features updated JSR-107 support, JMS 2.0 and annotation-centric JMS configuration, a SpEL compiler, and so much more.

This Week in Spring - July 15th, 2014

Engineering | July 15, 2014 | ...

Welcome to another installment of This Week in Spring! It's been a crazy week and next week figures to be even crazier! Some of us on the Spring team - including Spring Boot co-lead Phill Webb, Spring Batch lead Michael Minella and myself, will be at OSCON next week, so if you're in the area and at the show come say hi! We'll be at the booth at various hours, too.

  1. Spring Batch lead Michael Minella has just announced Spring Batch 3.0.1, and a new Spring Batch extensions repository which itself houses new integrations with Spring Batch. The first contribution is an ItemReader and ItemWriter for Elasticsearch. Nice!
  2. Spring Data ninja Thomas Darimont has just announced support for SpEL in Spring Data JPA @Query annotations
  3. Spring and Groovy Tool Suite lead Martin Lippert has just announced Spring Tool Suite 3.6.0 and Groovy Tool Suite 3.6.0, based on Eclipse Luna 4.4, with support for Groovy 2.3, Grails 2.4, tc Server 2.9.6, and other minor improvements and bugfixes.
  4. Spring Data ninja Christoph Strobl has just announced Spring Data Evans m1, in which many new revisions are included.
  5. Speaking of the first milestone of Spring Data Evans, Spring Data REST ninja Greg Turnquist has just announced that Spring Data Evans M1 milestone comes with ALPS metadata support. FTA: ALPS provides a way to interrogate a RESTful service to find out about the data it serves. Let's look at a quick example. If you clone the TODO repo and run mvn spring-boot:run, you can surf it's values pretty easily. So.. check it out! I know many have been asking about simialar support.
  6. Check out this upcoming webinar by Michael Plod on why he recommends Spring - learn the technology (and a bit of the business) case! Michael is a great speaker and frequently appears at conferences. Register now for the event on July 22nd.
  7. On July 29th, Russ Danner from Crafter software will tell us about Conquering Content-enabled Web and Mobile Applications with Spring and Groovy.
  8. Andreas Eisele has put together a very nice introduction to the machinery behind using @Transactional in your Spring-managed unit-tests, with analysis of common scenarios, code, and more. Vert cool discussion, and a thoughtful post.
  9. The Cegega blog has a very cool look at handling exceptions using Spring Batch's RetryTemplate.
  10. This subject's near and dear to my hear this week, so I just wanted to share this oldie-but-a-goodie: how to use Atomikos with Spring's JTA support
  11. You are, of course, checking out Groovy-language lead Guillaume LaForge's This Week in Groovy, aren't you? :-)

This Week in Spring - July 8th, 2014

Engineering | July 08, 2014 | ...

Welcome to another installment of This Week in Spring! I hope our American readers had a pleasant 4th of July, and I hope everybody else had a pleasant Friday!

There is, as usual, a lot to discuss this week so let's get to it!

  1. Sleepless Spring Security lead Rob Winch has just announced the first milestone of Spring Session. Spring Session makes it easy to access a session from any environment (i.e. web, messaging infrastructure, etc), support for clustering in a vendor neutral way, plug in strategies for determining the session ID, and easily keep the HttpSession alive when a WebSocket is active. This is really cool! And, in fact, it might solve an issue I faced just last week where I wanted to access the HTTP session from a Web Socket handler!
  2. Andy Wilkinson has just announced Spring Boot 1.1.4 release. The new release includes many bug-fixes and small new features, including support for the first stable preview release of Tomcat 8.
  3. Andy also just announced the first maintenance release to Spring IO which updates versions across the platform to include Spring AMQP 1.3.5, Spring Boot 1.1.4, Spring Batch 3.0.1, Spring for Apache Hadoop 2.0.1, and Spring Framework 4.0.6. Nice job, Andy!
  4. Thomas Risberg has just announced Spring for Apache Hadoop 2.0.1 which revs the dependency versions, including Hadoop 2.4.1, Spring framework 4.0.6.RELEASE, Spring Batch to 3.0.1.RELEASE, Spring Boot to 1.1.4.RELEASE.
  5. Stéphane Nicoll has just announced that Spring framework 4.0.6 is now available. This release includes about 50 bugfixes.
  6. Spring Social lead Craig Walls has just announced that Spring Social Facebook 2.0.0.M1 is now available. This release supports the new Facebook v2.0.0 Graph API, which introduces some breaking, obligatory, changes (thanks, Facebook!).
  7. Groovy project lead Guillaume LaForge has announced the beta of the new Groovy website and is soliciting feedback from the community at large.
  8. From the trenches: Join Casey Doolittle and Phil Dutson on July 15th for a webinar about a crazy project, and how they had to Build a Shopping Cart in 24 Hours using Spring.
  9. Check out this upcoming webinar by Michael Plod on why he recommends Spring - learn the technology (and a bit of the business) case! Michael is a great speaker and frequently appears at conferences. Register now for the event on July 22nd.
  10. On July 29th, Russ Danner from Crafter software will tell us about Conquering Content-enabled Web and Mobile Applications with Spring and Groovy.
  11. Last year, Spring tool ninjas Andy Clement and Martin Lippert did a great talk at SpringOne2GX 2013 introducing the latest and greatest tooling.
  12. Last year at SpringOne2GX 2013, Julien Dubois (you might recognise him from JHipster..) did a great talk looking at how to run and performance tune the classic Spring petclinic application.
  13. Dr. Dobb's had a nice post looking at the new Spring IO release.
  14. InfoQ's Matt Raible also put together a nice look at Spring IO. Check it out!
  15. The Literate Java blog has an interesting post on implicit (component-scan-centric) vs. explicit configuration (using XML) in Spring. I'd argue that Java configuration should really be considered as it offers the best of both explicit XML configuration (centralized, easy-to-reason about configuration) and implicit, but type-safe, Java annotation-and-component-scann-centric configuration. Either way, interesting post!
  16. Spring Boot is now in Thoughtwork's technology radar under assess.
  17. The Codeleak.pl site has a nice look at one of the smaller, but super powerful, features in Spring 4 - CGLIB proxies no longer require a default constructor!
  18. I've enjoyed this series of tutorials on using Spring and Angular.js. You might as well. Nice job, Christopher Henkel!
  19. The Apprenticeship Notes blog has a nice series of tutorials on how to use Spring MVC, Thymeleaf, and Bootstrap together.
  20. The Autoletics blog has a nice, numbers-filled, look at their experience profiling the Reactor project. Interesting stuff! Some of the points are interesting, too. As readers of this roundup know, Reactor is a highly concurrent event-driven IO-ready platform. And, it's ridiculously fast.
  21. I wanted to give a hat tip to Paul Snively, who has been using the 1-2 punch combo of the Spring (and Scala) and a third-party integration of Spring MVC for Alfresco to build Alfresco-powered solutions. Nice!
  22. Whether you like the new Groovy website or not (although, why wouldn't you?), you'll love the new Groovy 2.3.4 release which just dropped today and includes improvements on static compilation and AST transformations.
  23. HornetQ project-lead Clebert Suconic is inviting community feedback about a proposed contribution of HornetQ to the Apache ActiveMQ project. We know that developers in our community know and use both, so perhaps now's a prudent time to feedback if this proposed merger affects you! I personally like the idea. ActiveMQ.next (long codenamed "Apollo") seems like it could use the hug that a HornetQ-contribution could give it. And, of course, Spring Boot supports both ActiveMQ and HornetQ now, so either way, you're set!

Get ahead

VMware offers training and certification to turbo-charge your progress.

Learn more

Get support

Tanzu Spring offers support and binaries for OpenJDK™, Spring, and Apache Tomcat® in one simple subscription.

Learn more

Upcoming events

Check out all the upcoming events in the Spring community.

View all