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 - April 22nd, 2014

Engineering | April 22, 2014 | ...

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!

This Week in Spring - April 15, 2014

Engineering | April 15, 2014 | ...

Welcome to another installment of This Week in Spring! This week, I'm in Paris, France talking to developers about Spring Framework 4.0, Spring Boot, and more at Devoxx FR. Next week it's off to Bangalore, India for the Great Indian Developer Summit. As always, ping me online if you're around either location and want to talk Spring.

  1. Tuesday April 30th Webinar - don't miss Ashley Puls (New Relic) and myself as they track and trace through modern web apps: Web Application Diagnostics with Java and Javascript
  2. Tuesday April 22nd Webinar - see what stole the EclipseCon 2014 keynote: Martin Lippert and Mike Milinkovich demoing alpha versions of Project Flux: Connecting Eclipse to the Cloud-Based Era of Developer Tooling. Register today!
  3. Thomas Risberg and Janne Valkealahti show how they can use a single programming model / configuration model for Java MapReduce, Streaming, Hive, Pig, Cascading, or HBase in this SpringOne2GX 2013 Replay: Getting started with Spring Data and Apache Hadoop
  4. 90 minutes with Jags Ramnarayan and Anthony Baker at SpringOne2GX 2013: In-memory data and compute on top of Hadoop
  5. Check out Kevin Nilson (Google) and myself co-presenting at SpringOne2GX 2013 on Spring Profiles, and how it is an amazing tool for managing code through the normal dev/stage/production lifecycle: Multi Environment Spring Applications.
  6. I'm back with Roy Clarkson at SpringOne2GX 2013 talking about Spring Mobile/Android, REST/OAUTH and more in: Building Smart Clients with Spring
  7. Erdem Günay has put together a very nice post on how he used the Spring Expression Language (SpEL) and Spring Boot to dynamically send remote installation instructions to a wide array of Android clients, dynamically.
  8. Our pal Sam Brannen is going to be speaking at the Atlanta Spring User Group! One of the smart
  9. Moritz Schulze put together a very, very detailed post on how his company developed a time tracking, vacation-time managing application called Trackr with Java 8 and Spring Boot
  10. Mario Arias has put together a version of the Spring relational data Getting Started Guide using the Kotlin language. Kotlin is JetBrains' statically typed programming language to JVM byte codes and JavaScript. Very cool! I have never seen the kotlinprimavera module(s) before, but I dig it!
  11. Patrick Chanezon, director of enterprise evangelism at Microsoft, sat in on the vJUG meetup talk I gave on Spring Boot recently and set about hacking! The result is some guidance on how to deploy a Spring Boot application to Microsoft's Azure PaaS. Nice! Merci, Patrick!
  12. Hai Nguyen has put together a very nice post on how to configure / consume an embedded Jetty's JNDI-bound DataSource
  13. Did you miss Spring framework lead Juergen Hoeller's epic talk about Spring 4 and Java 8 from GOTO Amsterdam? Have no fear, you can watch it online!
  14. This is a particularly PaaSy This Week in Spring! Kim Saabye Pedersen has written a nice post on using Spring Boot on RedHat's OpenShift PaaS
  15. Our friend Petri Kainulainen is back, this time with a very nice post on using JOOQ with Spring. Petri's an amazing person to have in the community. I hope you don't need me to tell you that. Bookmark his site. It's almost always worth it.
  16. Our pal at Netflix, Tomás Lin, is back! This time he's got a post on bundling web content with Spring Boot and Gradle
  17. Michael Simons posted a very detailed post on how he's developing a Boot web application. Thanks for the detailed writeup, Michael. Very valuable feedback.

This Week in Spring - April 8th, 2014

Engineering | April 08, 2014 | ...

Welcome to another installment of This Week in Spring!

Tomorrow, I'll be presenting on the vJUG, a virtual JUG, about Spring Boot. Don't tell anyone, but the presentation itself is going to be based on a talk that Spring Boot co-founder Phil Webb and I have been planning. The code is already online, so check it out and I look forward to seeing you tomorrow! If you miss the talk, and you happen to be in the bay area, then join us on Thursday evening at the Pivotal offices here in San Francisco for a more caffeinated version of the same talk with both Phil and myself!

Then, this Sunday, I'm off to spread the Spring love! I'll touchdown first in Paris for Devoxx FR. From there, it's off to Bangalore, India, for the Great Indian Developer Summit. I haven't been there since 2012 and am very much looking forward to it and to seeing the amazing Spring community there. Then, on my way home I'll pop in to Belgium for a talk at the Belgium JUG

This Week in Spring (Spring Boot edition!) - April 1st, 2014

Engineering | April 01, 2014 | ...

Welcome everybody to a momentous This Week in Spring - Boot edition!

Today is, of course, April Fools day. There is a lot of great stuff out there as April 1st jokes go! We didn't prepare any practical jokes this year, but I always like to point people to this still-epic video of Spring co-founder Rod Johnson announcing the sale of SpringSource (as the company where Spring originated was named) to Microsoft! (in 2008, on April Fools)

That out of the way, there's far more interesting stuff to talk about today (with no bearing whatsoever on April Fools): Spring Boot which - just this morning - finally went GA! Congratulations to Phillip Webb and Dr. Dave Syer (and the scores of people who've helped them) on this amazing release.

I don't know what it looks like from the outside, looking in, but we on the Spring team have been watching Philip and Dave drive Boot from concept, to polished prototype where it made a huge splash at SpringOne2GX 2013, to GA over the last year and some change. Boot has informed many of the other Spring projects, including Spring Framework 4.0. A truly game-changing technology, and not just for the JVM, either.

If you haven't tried it yet, then now is the time. There'a a video on using Spring Boot from STS 3.5 (which is due soon as well). STS isn't required at all, but it does have some handy tools! Check it out.

  1. The big news: Spring Boot 1.0.0 has reached it's first major release!
  2. Spring Integration ninja Artem Bilan has just announced Spring Integration 3.0.2 and Spring Integration 4.0 M4. The new stuff in Spring Integration 3.0.2 is awesome, but scroll down for the Spring Integration, Boot & Java configuration demo! I'm tickled pink to see this release. #boot
  3. Spring lead Juergen Hoeller has announced the Spring 4.0.3 release, with Java 8 support and much improved websocket support.
  4. Spring Data legend Thomas Darimont has announced that Spring Data Redis 1.2.1 is now available. The new release includes bugfixes for RedisCacheManager and RedisTemplate.
  5. Spring Data lead Oliver Gierke has just released the first milestone of Spring Data Dijkstra. Check it out!
  6. On April 9, I'll be doing a vJUG presentation, live and worldwide, introducing Spring Boot. My hope is to - in the short space alloted - demonstrate what building an application with Spring Boot looks like. I'd love to see you there, and please feel free to also ask questions on the IRC channel. #boot
  7. Our pal Chris Richardson has chimed in with a blog that describes an approach to building Microservices with Spring Boot. The example is in Scala. Check it out! #boot
  8. Spring Boot's been nominated for Most Innovative Java technology. I'm not sure how the voting process works, but as soon as I find out, I'll post here. Either way, I hope we can count on your help to drive votes through! #boot
  9. Marco Vermeulen put together a very nice talk introducing how to use Spring Boot to build microservices, as well. This example is in Groovy. #boot
  10. Jim Drannbauer has put together a GitHub repository demonstrating how to use the recently released Spring MVC Test HtmlUnit and Cucumber together. With this in place, your unit tests almost read like human sentences! #boot
  11. Our pal Matt Raible is back at it again, this time with not one, but two posts on using Spring Boot! The first post demonstrates how to add Swagger integration to a Spring Boot application, and the second demonstrates what its like to build an iOS client to a Boot backend application using the Ionic framework. #boot
  12. The all and sundry blog is back, this time with a post on using Spring Boot and Scala together. Nice! Boot's a win no matter what language you're using! #boot
  13. Sergi Almar is back this week with a post on how to monitor your websocket threadpools using JMX. This is a fine followup to his last post on detecting websocket connection and disconnection in Spring 4. #boot
  14. The team behind our website has installed Disqus for comments on our blogs. I wish I could show you the emails, but the turnaround from "idea" to "comments are live!" in this instance was insanely quick. Agile, even.
  15. Adam Shook gave a talk SpringOne2GX 2013 Replay: Hadoop - Just the Basics for Big Data Rookies at SpringOne2GX 2013 whose replay is now available online. Don't miss it!
  16. Also available online is David Turanski and Luke Taylor's talk from SpringOne2GX 2013, Real Time Analytics with Spring. Check it out!
  17. The replay of the talk that Spring LDAP lead Mattias Arthursson gave at SpringOne2GX 2013 last year introducing Spring LDAP 2.0 is now live
  18. Did you miss Spring lead Juergen Hoeller's webinar introducing Spring 4 on Java 8? It's available now and definitely worth a watch!

This Week in Spring - March 25th, 2014

Engineering | March 26, 2014 | ...

Welcome to another installment of This Week in Spring! This week is going to be a crazy week, and I can't wait to see you on the other end of it next week! There are some BIG announcements coming! Keep your eyes glued to spring.io this week: So. Much. Win. Alright, with that out of the way, let's get to it!

This Week in Spring, Java 8 Edition - March 18th, 2014

Engineering | March 18, 2014 | ...

Welcome to another installment of This Week in Spring!

Today, Oracle released Java 8 and all its many wonderful features at EclipseCon. Java 8 is finally here! Be sure to grab your JDK today.

There are lots of fine features - like lambas - that enhance Spring application development. To learn more, be sure to check out Spring project lead Juergen Hoeller's webinar on the 25th of March on the subject of Spring 4 and Java 8. I'll be there!

As usual, we've got a lot to cover so let's get to it.

  1. InfoQ has posted a very nice article introducing Spring Boot today by Dan Woods. Dan does a very good job, I'd recommend it.

Happy 25th Birthday, Web! or: Honoring the web by embracing It

Engineering | March 13, 2014 | ...

Yesterday, the 12th of March, 2014, was the 25th anniversary of Sir Tim Berner's Lee having invented the web. As he explains: "I just had to take the hypertext idea and connect it to the Transmission Control Protocol and domain name system ideas and—ta-da!—the World Wide Web." Elementary, really. (Hah!)

Pictured (taken from Wikimedia) is the original NeXT workstation (whose operating system , NeXT Step, underpins today's OS X and iOS design) on which Sir Tim Berners-Lee put together the initial HTTP service and client.

As an aside: I've always wondered what it would be like to be able to…

This Week in Spring - March 11th, 2014

Engineering | March 12, 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 AMQP lead Gary Russell has just announced that Spring AMQP 1.3.0 has just been released!
  2. Spring Social lead Craig Walls just announced the first, long-awaited, RC of Spring Social 1.1. Hurray! I'm excited to see this new release.
  3. Spring Security lead Rob Winch has just announced a security fix for Spring Security 3.2.2 and 3.1.6.
  4. Dr. Dave Syer, co-lead on Spring Boot, among many, many other amazing things, has thrown together a sexy looking Spring Boot wrapper for Ratpack, a toolkit for JVM web applications. That's so awesome.
  5. Spring Data lead Oliver Gierke has just announced that the first service release for Spring Data Babbage is now available
  6. I put together a post on the various deployment strategies for Spring Boot applications
  7. Don't miss Mattias Arthursson on a webinar March 18th, presenting Spring LDAP 2.0.0.
  8. Join Juergen Hoeller and the Spring Team for a webinar on Java 8 and Spring Framework 4.0 on March 25!
  9. Speaking of Spring Data, check out the replay of this talk introducing Spring Data repository best practices from SpringOne2GX 2013
  10. Don't miss John Hann's introduction to pragmatic JavaScript from SpringOne2GX 2013
  11. Emanuel Rabina gave a talk at SpringOne2GX 2013 on improving your Spring view layer with natural templates and Thymeleaf: check it out!
  12. The More Vaadin blog has a nice, if short, post on the Spring Boot/ Vaadin integration that Vaadin's Petter Holmström and I have been working on . Nice! As always, this is open-source so don't be shy and be sure to send any feedback you have.
  13. In related news, snapshots of the Vaadin4Spring integration that Petter and I are working on are now published on Sonatype's repository - enjoy!
  14. Our pal Eberhard Wolff is back, and this time he's written up a nice (German-language) post on Spring 4.0 and Spring Boot, among (many) other things
  15. David Williams blog, A Time-to-Value Story with Cloud Foundry, is thought-provoking: how quickly can a technology deliver value - measurable value?
  16. Martin Fowler has started watching the micro services space. Nothing to report, specifically. This is just a page I'd recommend watching.
  17. Layer 7, a CA technologies company, has just released results of a survey focused on API design and deployment. There are many takeaways from the survey, so be sure to read it, but one thing I thought particularly promising: a predicted growth in Hypermedia-aware APIs among API developers. If you're interested in embracing hypermedia, and the design pattern HATEOAS, I would encourage you to check out Spring HATEOAS and - if you'd like to learn more about using Spring HATEOAS and Spring Boot, check out this tutorial and adjoining code.

Deploying Spring Boot Applications

Engineering | March 07, 2014 | ...

Spring Boot 1.0 RC4 just dropped and 1.0 can't be too far behind, and there are all sort of cool features coming!

One of the many questions I get around this concerns deployment strategies for Boot applications. Spring Boot builds on top of Spring and serves wherever Spring can serve. It enjoys Spring's portability. Spring Boot lets the developer focus on the application's development first, and removes the need to be overly concerned with every other aspect of its lifecycle, including deployment and management.

It aims to be production ready, out of the box. As part of this, Spring Boot does a few things differently, by default, that may be at first alien to some. In this post, I hope to briefly cover some of the common strategies for deploying a Spring Boot applications. I'll ever so briefly introduce it, and some sample code, before we dive deeper. Feel free to skip this section and start at the Embedded Web Server Deployment

This Week in Spring - March 4th, 2014

Engineering | March 05, 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 Batch and Boot co-founder Dr. Dave Syer has announced that Spring Boot RC4 is now available. Check out the latest cut for all the goodies!
  2. There is a new guide that details how to use Spring Data REST
  3. Spring Data ninja Christoph Strobl has announced that Spring Data Redis 1.2 is now available.
  4. Don't miss Mattias Arthursson on a webinar March 18th, presenting Spring LDAP 2.0.0.
  5. Join Juergen Hoeller and the Spring Team for a webinar on Java 8 and Spring Framework 4.0 on March 25!
  6. David Turanski has put together a nice post on how to use Groovy for bean configuration
  7. Alvaro Videla's and Jan Machacek's talk from SpringOne2GX 2013, RabbitMQ is the new King, is now available online
  8. Gary Russell's SpringOne2GX 2013 talk introducing Spring Integration's internals is now online
  9. Pance Cavkovski has a nice post demonstrating the web socket support from the JavaWebSocket project, Java EE 7 and Spring 4.
  10. Norris Shelton Jr. has a nice post on accessing the Spring Security principal from the currently installed Authentication object using a custom annotation
  11. Quinten Krijger has a nice post on how to manage session concurrency with Spring Security and Spring MVC
  12. Tomasz Nurkiewicz writes about how to build a custom Spring XML namespace. He makes a great point at the beginning, though: Spring doesn't require XML!
  13. The Not Just Another Blog blog looks at how to override the Spring Security filter chain
  14. Thys Michels has a short-and-sweet post on how to configure a Spring application using Java configuration to consume an ElasticSearch service on Heroku.

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