SpringSource

Webinar: Multi Client Development with Spring

Start: 2013-03-14 10:00 End: 2013-03-14 11:00 Timezone: US/Pacific Start: 2013-03-14 10:00 End: 2013-03-14 11:00 Timezone: US/Pacific .event-nodeapi, .submitted {display:none}

No application is an island and this is more obvious today than ever as applications extend their reach into people's pockets, desktops, tablets, TVs, Blu-ray players and cars. What's a modern developer to do to support these many platforms? In this talk, join Josh Long to learn how Spring can extend your reach through (sometimes Spring Security OAuth-secured) RESTful services exposed through Spring MVC, HTML5 and client-specific rendering thanks to Spring Mobile, and powerful, native support for Android with Spring Android.

Josh Long is the Spring developer advocate. He is the lead author on Apress’ Spring Recipes, 2nd Edition, and a SpringSource committer and contributor. When he's not hacking on code, he can be found at the local Java User Group or at the local coffee shop. Josh likes solutions that push the boundaries of the technologies that enable them. His interests include scalability, BPM, grid processing, mobile computing and so-called "smart" systems. He blogs at blog.springsource.org or joshlong.com.

Europe: Thursday, March 14
3:00 pm Western Europe (London, GMT)
Register now

North America: Thursday, March 14
10:00 am Pacific Standard (San Francisco, GMT-08:00)
Register now

This Week in Spring - Feb 19th, 2013

This Week in Spring - February 19th, 2012

Welcome back to another installment of This Week in Spring! This week I'm in Atlanta, GA with a few other SpringSource colleagues talking to developers at the DevNexus Java conference and - tomorrow - speaking at the Atlanta Spring User Group. This show is bigger and better than ever this year! I love the energy and community here.

If you're in Atlanta, GA, drop by the eHire labs (see the link above for the address) tomorrow night for the Spring User Group and we'll talk about REST, Spring MVC, Spring for Android, Spring Mobile, and more! I look forward to seeing you.

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

  1. The Spring Data release train "Arora" is now avialable, a synchronized, tested release of all Spring Data sub projects - check it out now!
  2. Craig Walls has announced that Spring Social 1.1.0.M2 has been released ! The new release incorporates tighter integration with Spring Security and a slew of new features.
  3. Jeremy Grelle has announced When.js 1.8.0 which is cujojs's lightweight Promises/A implementation.
  4. Gary Russell has announced Spring Integration 3.0.0 M1. There are no major new features in this first milestone, it is mainly refactoring, removing deprecations, etc. Browse the documentation 'what's new' and the release notes for more information.
  5. Register now to talk with Sam Brannan and Rossen Stoyanchev on Feb 21st in the Webinar: Testing Web Applications with Spring 3.2
  6. New replays from SpringOne2012 - talks from the Data and Integration track talks starting to hit YouTube. Check out Gary Russell's Monitoring and Managing Spring Integration Part 2, and Hadoop / Big Data enthusiasts shouldn't miss Costin's talk How to build Big Data Pipelines for Hadoop using OSS.
  7. As a bonus session this week, we've also released Spring Data REST: Easily export JPA entities directly to the web.
  8. Krishna's blog has a nice post on using CAS (single signon using Jasig) with Spring Security.
  9. Sergei Sizov has put together a nice post on using Spring Security and HTTP Basic authentication.
  10. The Lucky Ryan blog has a very nice post introducing HDIV - which can be used to prevent cross site request forgery (CSRF), remove the ability to alter non-editable data (hidden fields, params…) and even has options to limit characters globally across form fields - and explaining how to use HDIV with Spring MVC.
  11. Your remoting layer (the layer that's exposed over the network) might simply surface the domain model objects from your services layer. Often, however, the object sent across the wire is a slightly different version of the data used by the service. Perhaps fields are omitted because they contain too much data. Perhaps extra fields are added to communicate metadata about the service itself. Perhaps you simply want to flatten two different types into a single object for ease-of-transport. Whatever the reason, the common pattern (or anti-pattern) to handling this is a DTO (data transfer object). We had these before with EJBs and DCOM and CORBA. Now we have them with REST. If you find you have to have DTOs, the jtransfo library introduced in this post seems like it might be helpful in reducing the tedious adapters from DTO to domain object. The post explains how to use JTransfo to automatically handle adapting domain objects to DTOs.
  12. The Fahd.blog blog has a nice introduction to Spring Batch's RetryTemplate. This is a very powerful component of Spring Batch that doesn't get enough love, so I am glad to see this post!
  13. The Learn and Shine blog has a nice post introducing how to use Spring MVC to render XSLT views.
  14. The Java Ninja Chronicles By Norris Shelton, Jr blog has a very concise post on how he took the first steps in using Spring's Java configuration style to make short work of loading properties from an exotic source.

SpringOne 2GX 2012 Replays: Monitoring and Managing Spring Integration, Building Big Data Pipelines with Spring Hadoop

Managing and Monitoring Spring Integration Applications

In this presentation we will discuss the options for managing and monitoring applications that use Spring Integration. It will provide a comprehensive overview of the extensive support for JMX provided by Spring Integration, both in terms of providing access to Spring Integration internals, as well as creating a JMX client to interact with local and remote MBeanServers.

In addition, we will show how to use the Spring Integration plugin for Spring Insight to drill down into Spring Integration flow processing to examine application performance.

Topics include:

  • Using the Integration MBean Exporter, and the MBeans it registers, for analyzing Messaging Endpoints and Channels.
  • Exporting the Integration MBean Exporter itself as an MBean, to gain access to it's attributes and operations.
  • Using the Control Bus to start and stop endpoints.
  • Using the Spring Integration plugin for Spring Insight to get a real-time view of your application and its performance.
  • Enabling and using Message History
  • Using the orderly shutdown mechanism available in Spring Integration 2.2.
  • Using JMX endpoints (with local and remote MBeanServers) to monitor attributes. invoke operations, publish notifications, and receive notifications.


About the speaker Gary Russell

Gary has been in software engineering, concentrating on Enterprise Integration, for over 30 years on various platforms, and in the Java space since the late '90s.

He has been developing with the Spring Framework since 2004 and joined SpringSource/VMware in 2009 in a consulting role. From 2009 until the end of 2011 he taught Core Spring and Enterprise Integration with Spring to several hundred developers, as well as providing Enterprise Integration consulting services with Spring Integration, Spring Batch and Core Spring.

He has been a committer on the Spring Integration project for nearly 3 years and became a full time member of the engineering team in January 2012.

More About Gary »
How to build Big Data Pipelines for Hadoop using OSS

Hadoop is not an island. To deliver a complete Big Data solution, a data pipeline needs to be developed that incorporates and orchestrates many diverse technologies. A Hadoop focused data pipeline not only needs to coordinate the running of multiple Hadoop jobs (MapReduce, Hive, Pig or Cascading), but also encompass real-time data acquisition and the analysis of reduced data sets extracted into relational/NoSQL databases or dedicated analytical engines.

This session looks at the architecture of Big Data pipelines, the challenges ahead and how to build manageable and robust solutions using Open Source software such as Apache Hadoop, Hive, Pig, Spring Hadoop, Batch and Integration.



About the speaker

Costin Leau

Costin Leau is an engineer within the SpringSource. His interests include data access and aspect oriented programming. With significant development experience, Costin has worked on various Spring Framework features (cache abstraction, JPA, java config), led the Spring Dynamic Modules (Spring OSGi probject), Spring GemFire and the Spring-inspired, OSGi 4.2 Blueprint Service RI. Currently Costin is working in the NOSQL and Big Data area, leading the Spring integration with Hadoop and Redis.

More About Costin »

Spring Integration 3.0.0 Milestone 1 is Released!

We are pleased to announce that Spring Integration 3.0.0.M1 is now available. There are no major new features in this first milestone, it is mainly refactoring, removing deprecations, etc. Browse the documentation 'what's new' and the release notes for more information.

We are happy to see more community contributors and are continuing our efforts to promote that growing trend, both in the core project and the extensions respository.

More information is available on the project's home page.

When.js 1.8.0 Released

Dear Spring Community,

We are pleased to announce the release of when.js 1.8.0.

When.js is cujojs’s lightweight Promises/A and when() implementation, derived from the async core of wire.js, cujojs’s IOC Container. It also provides several other useful Promise-related concepts, such as joining multiple promises, mapping and reducing collections of promises, and timed promises.

Among other things, this release includes an extensive set of adapters for working with existing callback-based APIs, including node-style async APIs, allowing you to effectively convert them into promise-aware functions. In addition, most of the new features in this release are community contributions, which is awesome. Keep it coming!

Some specific highlights include:

  • Adapters for promisifying existing callback-based code.
  • Mechanisms for generating and processing unbounded/infinite lists
  • Promise-based periodic polling utility.

Check out the changelog for more info and direct links to docs for all the new goodies.

If you're still wondering what this cujojs thing is all about, be sure to check out Brian Cavalier and John Hann's "IOC + JavaScript" talk from SpringOne 2012.

Spring Social 1.1.0.M2 Released

Dear Spring Community,

We are pleased to announce the second milestone release of Spring Social 1.1.0!

Spring Social is an extension of the Spring Framework that enables you to connect your Java applications to Software-as-a-Service (SaaS) providers such as Facebook and Twitter.

Along with Spring Social 1.1.0, we are also releasing second milestones for Spring Social Facebook 1.1.0 and Spring Social Twitter 1.1.0.

The main theme of milestone 2 is tighter integration with Spring Security, including a new SocialAuthenticationFilter to achieve sign-in-with-provider capability directly within the Spring Security filter chain.

In addition to Spring Security integration, these milestone releases also include:

  • Support for non-standard parameters in the OAuth authorization flows.
  • Interceptor capability in ProviderSignInController's flow to allow for custom behavior in authentication flow.
  • Sign-in capability for Facebook Canvas applications, including a new spring-social-canvas sample to showcase the use of CanvasSignInController.
  • Support for paging in the Facebook API binding with "since" and "until" parameters.
  • Advanced search capabilities in the Twitter API binding.
  • Support for ticker symbol pseudo-entity in Twitter statuses.

These milestone releases also contain several smaller improvements and bug fixes.

To get the software, download the release distribution (Core | Facebook | Twitter).

As always, the Spring Social community has been awesome at providing feedback and contributing pull requests to make this release possible. Significant contributions in this release came from Stefan Fussenegger, who contributed much of the Spring Security integration code and Yuan Ji who provided feedback and refactoring help in that same set of code. Also, it seems that the Spring Social community has taken a keen interest in using Spring Social to build Facebook Canvas apps, which led to the creation of CanvasSignInController.

If you'd like to follow along or contribute, we encourage you to participate in the Spring Social Forum, report bugs or suggest enhancements, or to fork the code and contribute back via pull requests.

Spring Data release train Arora released

I am pleased to announce the first themed release of the Spring Data release train named Arora. Going forward we'll use names of famous computer scientists to label a set of Spring Data modules to make it easier to identify modules being compatible to each other. This mostly refers to the Spring Data Commons version they refer to.

The Arora release contains the following modules:

The major new features of the release are:

  • Annotation based auditing support through @CreatedDate, @CreatedBy etc. (except Spring Data Gemfire)
  • Exposure of Spring Data Mapping information for all modules (to be used by Spring Data REST)
  • Spring Data Mapping information being read from accessor methods as well
  • Automatic registration of JodaTime Converters if present on classpath (Spring Data MongoDB)
  • Major improvements to mapping subsystem and query execution for Spring Data MongoDB
  • Extended querying options on query methods (Spring Data Solr)
  • Annotation support for Gemfire functions (Spring Data Gemfire)
  • A tag has been added to the gfe-data XML namespace for automatic basic client connection and region configuration. (Spring Data Gemfire)
  • Support for Lettuce Redis driver (raising the count of supported driver to 5, Spring Data Redis)
  • Dynamic removal of listener for running MesageListenerContainer (Spring Data Redis)
  • Refined Maven build to ease release process

Alongside the new major versions of the Spring Data Modules we've also published bugfix releases for Spring Data Commons (1.4.1), Spring Data JPA (1.2.1) and Spring Data MongoDB (1.1.2).

Note: The artifactId of the Spring Data Commons module has changed to from spring-data-commons-core to spring-data-commons. So if you're explicitly referring to it from your project, make sure you update the reference accordingly.

The binaries will be present in Maven central shortly if now already in place.

Spring Social Twitter 1.0.3 Released

Dear Spring Community,

I'm happy to announce the release of Spring Social Twitter 1.0.3.RELEASE.

Spring Social is an extension of the Spring Framework that enables you to connect your Java applications to Software-as-a-Service (SaaS) providers such as Facebook and Twitter.

This is an API-update release, bringing Spring Social Twitter's API binding up to date with version 1.1 of Twitter's API. Twitter has deprecated the 1.0 version of their API and will shut it down next month. It is recommended that if you are using Spring Social Twitter 1.0.2 or lower that you immediately upgrade to Spring Social Twitter 1.0.3 to avoid any disruption in functionality.

To get the software, download the release distribution.

It is anticipated that this will be the last release of Spring Social Twitter in the 1.0.x series. Work on Spring Social 1.1.0 is well underway and is now at milestone 2 for the 1.1.0 release.

This Week in Spring - Feb 12th, 2013

This Week in Spring

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

  1. Dave Syer is taking his SpringOne2GX talk to an online audience on Feb 14th, 2013 Webinar - When and Why Would I Use OAuth2?
  2. Dream team Sam Brannen (Swiftmind) & Rossen Stoyanchev (SpringSource) join forces on Feb 21st, 2013 for a Webinar: Testing Web Applications with Spring 3.2
  3. New SpringOne2GX 2012 talks released to YouTube in HD! Ten Great Reasons to Virtualize Your Java Apps, and What's New in CloudFoundry.
  4. Our pal Boris Lam is back, this time with two posts on how to use Spring Data MongoDB and JSF together.
  5. The PluralSight blog has a video introduction to Spring MVC interceptors. This video is an excerpt from a full-fledged video course.
  6. Cool demonstration: Spring Insight plugins for Spring Integration and RabbitMQ.
  7. The syntx blog has a nice post on how to add HTTP Basic authentication using Spring Security to Spring MVC-secured resources.
  8. Krishna's Blog has a nice post introducing unit-testing the Spring Security layer with the InMemoryDaoImpl.
  9. You know, I was looking for something like this just the other day! Mark's Blog has a nice post on the workflow of the various objects in servicing an incoming HTTP request in Spring MVC. Is this stuff you could easily figure out by sticking a breakpoint in a controller and just looking at the call stack? Sure. But it's also stuff that's very convenient to reference in a pinch and it's nice to see it all laid out in order with a little bit of narrative.
  10. The Dinesh on Java blog has a nice post on how to setup Spring Security.
  11. The Lucky Ryan blog has a really à propos post on migrating XML-based Spring MVC configuration to the Java and annotation centric alternative.
  12. The Java Code Geeks blog has a very nice post on exception handling when dealing with REST services
  13. Our pal Roger Hughes is back, this time with a nice writeup of a few of the various lifecycle techniques for Spring beans.
  14. The CommonJ blog has a nice post on passing request parameters to Spring MVC from JavaScript. This one is faintly related to Spring MVC, but close enough! :)

SpringOne 2GX 2012 Replays: Ten Great Reasons to Virtualize Java Applications, What's New in CloudFoundry

Ten Great Reasons to Virtualize Your Java Apps

Customer interest in virtualizing Java workloads has been growing exponentially year on year. For the last few years, the focus has been largely around looking for best practice guidance to mitigate concerns around virtualizing Java workloads, particularly in the area of performance. Since joining VMware, SpringSource has been investing in providing first class support for the Java runtime on vSphere with products such as EM4J. Combined with the industry-leading capabilities of the vSphere platform and the growing product portfolio around the Java ecosystem, there are many great reasons to virtualize Java.

So rather than continuing to ask the question, is it OK to virtualize Java, this session boldly aims to suggest that you would be crazy not to!


About Benjamin Corrie

Ben Corrie has been working on Java since 1998, where he began at IBM testing JDK 1.1.4. He progressed to working on the internals of IBM's Java Virtual Machine where he lead a project to develop industry-leading memory management technology for the JVM. He joined SpringSource as a consultant in 2008 and moved to California a year later to lead an effort to improve Java performance on vSphere. As the tech lead on the recently announced EM4J project, he is successfully helping to make vSphere the best place to run Java.

More About Benjamin » What's New in Cloud Foundry

Come to this session to get an in-depth view of the latest and greatest in Cloud Foundry. It's easier than ever before to build and deploy your distributed polyglot applications. You will see some exciting new options, including new Java and Node runtimes and support for background workers and container-less web apps. These features allow you to create distributed apps comprised of many smaller, focused apps each written in the framework that fits its purpose best. We will also explore the latest in tooling, including new features in the STS plugin and the brand new "next gen" VMC client. We will peek under the hood to see what's new in the Cloud Foundry architecture. From Cloud Foundry beginner to expert, this session has something for everyone.



About Jennifer Hickey

Jennifer Hickey is a Sr. Software Engineer with SpringSource/VMware, with over a decade of experience in software engineering. Jennifer is a member of the Cloud Foundry team, specializing in developer experience and support of frameworks such as Spring, Grails, Rails, and Sinatra. She is passionate about increasing developer productivity in the cloud. Jennifer has led or contributed to a number of SpringSource projects, including Hyperic and tc Server. She has been involved in converting multiple large EJB/legacy codebases to Spring. Prior to joining SpringSource, Jennifer was a principal architect of a large-scale network management system.

More About Jennifer »
About Ramnivas Laddad

Ramnivas Laddad is a SpringSource Principal Engineer. He has over a decade of experience in applying his enterprise Java and aspect-oriented programming (AOP) expertise to middleware, design automation, networking, web application, user interface, and security projects.

Ramnivas Laddad is a well-known expert in enterprise Java, especially in the area of AOP and Spring. He is the author of AspectJ in Action, the best-selling book on AOP and AspectJ that has been lauded by industry experts for its presentation of practical and innovative AOP applications to solve real-world problems. Ramnivas, a Spring framework committer, is also an active presenter at leading industry events such as JavaOne, JavaPolis, No Fluff Just Stuff, SpringOne, Software Development, and has been an active member of both the AspectJ and Spring communities from their beginnings.

More About Ramnivas »  

Become Spring Certified in 3 Steps

Becoming officially Spring Certified demonstrates your understanding of Spring and helps to advance your career as a Spring Developer. To become Spring Certified:

STEP 1: To be fully prepared for the Spring Certification exam and to receive the Spring Certification exam voucher developers will need to attend a professional 4-day Spring training. Depending on your level of experience with Spring and your focus as a developer you can choose from:

STEP 2: After the training you will receive a SpringSource Certification exam voucher that you can use at a Pearson Vue Center. Pearson Vue has hundreds of locations all over the world so you are guaranteed to have an exam center near you. You can use the SpringSource Certification exam location finder to see what exam centers are available near you.

STEP 3: Take the exam, pass the exam and you are now officially Spring Certified! The Spring Certification has several advantages for you as a developer:

  • Advance your career: The Spring Certification is the only recognized and official certification for the Spring Framework.
  • Show your Spring Certification Badge on LinkedIn: Spring Certified developers are eligible to join the network of Spring Certified developers on LinkedIn. The certification badge will be shown on your profile and you can join in a selected group of Spring Professionals to discuss developer problems, solutions and new projects.
  • Receive the official Spring Certification: You will be sent a document proving you are officially Spring Certified.

More Spring Certification information can be found here

This Week in Spring - Feb 15th, 2013

This Week in Spring

Welcome back to another installment of This Week in Spring -- There's some great video content is available online this week, so be sure to check the content out. Also, you asked and we are delivering - we now maintain an single index page for all SpringOne2GX recordings along with the link to the InfoQ page for their recordings of the event. On with the roundup!

  1. Rossen Stoyanchev has announced the 2.4M1 and 2.3.2 releases of Spring Web Flow.
  2. Dream team Sam Brannen (Swiftmind) & Rossen Stoyanchev (SpringSource) join forces on Feb 21st, 2013 for a Webinar: Testing Web Applications with Spring 3.2
  3. Dave Syer is taking his SpringOne2GX talk to an online audience on Feb 14th, 2013 When and Why Would I Use OAuth2?
  4. Jeremy Grelle's talk from SpringOne2GX 2012 introducing practical patterns for asynchronous, push-enabled applications is now available online.
  5. Craig Walls' presentation from SpringOne2GX 2012 Introducing Spring Social is now available on YouTube in HD.
  6. Craig Walls' Javascript - focused talk from SpringOne2GX 2012 Client Side UI Smackdown, is now available on YouTube in HD.
  7. Over on InfoQ China (where the content is in Chinese...), blogger Ding Xuefeng has done a marvelous job shining a light on some of the various Spring sub-projects, including Spring Data, Spring Batch, Spring Integration. Definitely worth a read!
  8. The slides from Spring framework committer Sam Brannan's talk on Spring Framework 3.2 are available, and make for a fascinating read.
  9. This blog explains how to lookup and use a JavaMail Session as configured in Tomcat's JNDI from a Spring application.
  10. The softtech blog has a code-heavy post introducing how to create a one-to-many relationship using Spring Data JPA.
  11. The Guident blog has a nice post introducing Spring Data Hadoop's support for HBase.
  12. The Dinesh on Java blog has a nice post on how to use Spring Data MongoDB to update a document.
  13. The New Fast Money blog has a look at content from SpringOne2GX introducing the Broadleaf commerce engine that is written entirely in Spring.

SpringOne 2GX 2012 Replays: Going Async - Practical Patterns for Push-Enabled Applications

Going Async - Practical Patterns for Push-Enabled Applications

Web and mobile clients are getting continually more sophisticated as client processing power continues to increase and much richer APIs are provided by the given platform. One of the most mind-bending shifts that is occurring is in transitioning from a world of purely request-response, to the world of client-server full duplex communication that is enabled by the latest smart client platforms.

This session will explore the new patterns of interaction that are enabled by the latest communication methods such as WebSockets and Push-to-Device services, as well as the practical concerns of actually implementing such patterns in an application using tools such as SockJS, RabbitMQ and Spring.


About Jeremy Grelle

Jeremy Grelle is an open source software engineer with SpringSource, a division of VMware, who specializes in bringing the cutting-edge techniques of web application development to the Java and Spring ecosystems. He is the creator of the Spring JavaScript, Spring Faces, and Spring BlazeDS Integration projects, and he represented SpringSource on the JSR-314 Expert Group for JSF 2.0. He is a software artisan with extensive experience in combining server-side Java with the latest web browser technologies to deliver a rich and usable experience for the end user on the web.

Jeremy is a frequent speaker at industry conferences such as JavaOne, The Spring Experience, SpringOne, JSFOne, TheServerSide Java Symposium, and Java and Flex user group events, and always enjoys getting out and showing his fellow developers how to bend web browsers to their will and the possibilities of what can be created with Spring and its wealth of complimentary web technologies.

More About Jeremy »

SpringOne 2GX 2012 Replays: Client Side UI Smackdown, Making Connections with Spring Social

Making Connections with Spring Social

The modern web is rich with APIs that can be consumed by other applications, enabling an integrated experience for the users who hold accounts on the websites that front those APIs. Many of these APIs are secured with OAuth, an authorization specification for securing REST APIs. Spring Social is an extension to the Spring Framework that enables Spring applications to establish connections with those APIs on behalf of their users with little or no need to muck about in the intricacies of OAuth.

In this session, we'll explore how Spring Social brings API connectivity to Spring applications. We'll also uncover the newest features of Spring Social that make it easier than ever to link your application's users to the identities they maintain on various sites across the web.


About Craig Walls

Craig Walls has been professionally developing software for almost 18 years (and longer than that for the pure geekiness of it). He is a senior engineer with SpringSource as the Spring Social project lead and is the author of Spring in Action and XDoclet in Action (both published by Manning) and Modular Java (published by Pragmatic Bookshelf). He's a zealous promoter of the Spring Framework, speaking frequently at local user groups and conferences and writing about Spring and OSGi on his blog. When he's not slinging code, Craig spends as much time as he can with his wife, two daughters, 4 birds and 3 dogs.

More About Craig » Client-Side UI Smackdown

In the modern web, user interfaces are expected to be rich, highly responsive, and available anytime, anywhere, and on any device. Round-trip server-side HTML rendering doesn't fit the bill any longer and numerous JavaScript frameworks have stepped forward to simplify development of client-side user-interfaces. With so many great options available, we now face a paradox of choice and it can be difficult to decide which UI framework best suits our needs.

In this session we'll explore a handful of the most popular client-side UI frameworks, including Backbone, Knockout, Sammy, and Spine (and others) weighing their strengths and weaknesses and helping decide which framework is most suitable for a given set of UI goals.



About Craig Walls

Craig Walls has been professionally developing software for almost 18 years (and longer than that for the pure geekiness of it). He is a senior engineer with SpringSource as the Spring Social project lead and is the author of Spring in Action and XDoclet in Action (both published by Manning) and Modular Java (published by Pragmatic Bookshelf). He's a zealous promoter of the Spring Framework, speaking frequently at local user groups and conferences and writing about Spring and OSGi on his blog. When he's not slinging code, Craig spends as much time as he can with his wife, two daughters, 4 birds and 3 dogs.

More About Craig »

Spring Web Flow 2.4 M1 and 2.3.2 Released

A minor maintenance release of Spring Web Flow 2.3.2 is now available via Maven and for download. See the Changelog for the list of changes.

A first milestone of Spring Web Flow 2.4 is also available through the SpringSource milestone repository. See the Changelog for the full list of changes.

Spring Web Flow samples have been separated from the distribution and into a separate Github project. In addition the booking-mvc sample has been updated to use Thymeleaf thanks to Thymeleaf's project lead Daniel Fernández.

Webinar: Testing Web Applications with Spring 3.2

Start: 2013-02-21 10:00 End: 2013-02-21 11:00 Timezone: US/Pacific Start: 2013-02-21 10:00 End: 2013-02-21 11:00 Timezone: US/Pacific .event-nodeapi, .submitted {display:none}

SpringSource has innovated extensively around testing in the past, something which continues today -- one of the most exciting new features in Spring Framework 3.2 is Spring MVC Test. What makes it so interesting is the comprehensive support for testing web applications and context hierarchies with the Spring TestContext Framework as well as comprehensive support for out-of-container Spring MVC tests.

Join Sam Brannen and Rossen Stoyanchev to see these new Spring Web testing features in action.

Rossen Stoyanchev is a Spring Framework developer focusing on Spring MVC as well as Spring Web Flow. His 17+ year background includes work on trading and risk management software, investment accounting, e-commerce web applications, directory services, among others. Prior to becoming a full-time Spring Framework developer, Rossen spent several years teaching and consulting clients building enterprise Java applications with Spring on a broad range of topics.

Sam Brannen is a Senior Software Consultant with over 14 years' experience and co-founder of Swiftmind, a software consulting agency in Zürich, Switzerland. At Swiftmind Sam helps international clients achieve best practices in agile software development, architecture, design, implementation, and testing of enterprise Java applications using the Spring Framework and a plethora of open source technologies. In his consulting role, Sam most enjoys leading work shops, code reviews, coaching, and training clients.

Europe: Thursday, February 21
3:00 pm Western Europe (London, GMT)
Register here

North America: Thursday, February 21
10:00 am Pacific Standard (San Francisco, GMT-08:00)
Register here

Webinar: When and Why Would I Use OAuth2?

Start: 2013-02-14 10:00 End: 2013-02-14 11:00 Timezone: US/Pacific Start: 2013-02-14 10:00 End: 2013-02-14 11:00 Timezone: US/Pacific .event-nodeapi, .submitted {display:none}

One of the questions we get asked the most by developers and architects is: when and why would I use OAuth2? Join David Syer, technical lead on Spring Batch, to explore the answer to this question -- the answer, as often with such questions, is “it depends”, but there are some features of OAuth2 that make it compelling in some situations, especially in systems composed of many lightweight web services, which is becoming a very common architectural pattern.

This presentation will not go into a lot of detail about the OAuth2 protocol and related specifications, but will attempt to show some of the key features of a system secured with OAuth2 and the decision points when choosing to build such a system.

Europe: Thursday, February 14
3:00 pm Western Europe (London, GMT)
Register here

North America: Thursday, February 14
10:00 am Pacific Standard (San Francisco, GMT-08:00)
Register here

This Week in Spring - January 29th, 2013

Welcome back to another installation of This Week in Spring ! I've been visiting developers and companies in India, China, and Japan. It's been an exciting time to see what these emerging and powerful countries are doing with open source and with Spring, in particular! Of course, stay tuned to the SpringSource blog in the coming weeks some very cool examples and details! In the meantime, as usual, we've got quite a bit of news to cover this week, including more news on the Spring 4 roadmap announcement from last week. If you want to get the absolute latest, check out the Spring 3.2 GA webinar replay on YouTube, where Spring Framework 4.0 is covered a bit toward the end. Let's get to it!

  1. Charles Humble at InfoQ's done a nice interview with Juergen Hoeller and write up of the Spring 4 announcement .
  2. The Spring Integration 2.2.1 and 2.1.5 maintenance releases are now generally available.
  3. Spring HATEOAS 0.4 was released, adding Jackson and HAL support.
  4. Two new SpringOne 2GX 2012 Replays have been released to our YouTube Channel: Tooling for the Javascript Era, An Introduction to Broadleaf Commerce
  5. We've launched a page to centralize all the SpringOne2GX 2012 recordings, check it out!
  6. Chris Beams, Gunnar Hillert, and Rossen Stoyanchev were recorded in well-received presentation Introducing WebSockets at SpringOne2GX 2012, now online on InfoQ!
  7. Blogger Ilias Tsagklis from the Java Code Geeks blog also has a nice post on the Spring 4.0 roadmap announcement.
  8. Chris Beams has announced that Spring 3.1.4 has been released!
  9. Marty Pitt has created a very nice extension - he's calling it BakeHouse- for Spring web applications that preprocesses web artifacts for consumption in your web application at application startup. There are various kinds of pre processing possible: This is a very cool extension, Marty! It's like what I always wanted things like JAWR to be! The thing I most like about it, though? The fluid use of Spring Java @Configuration classes! Really slick and productive!
  10. The Japanese portal Public Key has a nice writeup of the announced roadmap for Spring 4.0
  11. The Just Enough Architecture blog has a nice post on using ActiveMQ, Spring Integration and MongoDB together - cool! I might've used Spring Batch's flat file reading support instead of a custom one out of the box, though, overall, this is an awesome post!
  12. Blogger madhav has a nice look at the code to support table and class inheritance using Spring Data JPA. That said, it's really hard to read as the code is not indented at all!
  13. Noushin Bashir has put together a nice post on how to configure ActiveMQ with SSL and then connect to it from Spring.
  14. Allard Buijze over at Trifork has announced version 2.0 of the Axon framework, which builds on top of many different Spring projects like Spring core, Spring AMQP, Spring Integration and Spring Data MongoDB to bring the CQRS pattern to developers in Java.
  15. Blogger lvwenwen has put together a nice, Chinese-language post introducing Spring and MongoDB integration.
  16. Blogger java2000_wl has put together a nice, Chinese-language (though, to be fair, the post is almost entirely code, in this case, and that language - if nothing else - is universal) post introducing how to use Spring Data Redis
  17. Blogger Ctillin has put together a Chinese-language post introducing how to use @Autowired in your Spring applications.

Spring Hateoas 0.4 released

Untitled Document

SpringSource would like to announce the release of Spring Hateoas 0.4!

The Spring HATEOAS project provides some APIs to ease creating REST representations that follow the HATEOAS principle when working with Spring and especially Spring MVC. HATEOAS, an abbreviation for Hypermedia as the Engine of Application State, is a constraint of the REST application architecture that distinguishes it from most other network application architectures. The core problem it tries to address is link creation and representation assembly.

In this release, the most important new features are:

- extended LinkBuilder API to point to Controller *methods* as well
- Jackson 2 support
- HAL support
- EntityLinks API to create links pointing to controllers managing a particular entity type
- introduced LinkDiscoverer API to find links in representations by rel (incl. JSONPath based implementation)

You can read about all of the new features and bug fixes in the change log. Enjoy!

Download | Documentation | Javadoc API (coming soon) | Change Log | Issues/Bugs |

Spring Tool Suite and Groovy/Grails Tool Suite 3.2.0.M2 released

Dear Spring Community,

I am happy to announce the second milestone release 3.2.0.M2 of the Spring Tool Suite (STS) and the Groovy/Grails Tool Suite (GGTS).

Highlights from this milestone build include:

  • a lot of overall performance improvements, especially for the Spring tooling
  • improvements to Live Beans Graph feature
  • improved Spring Data code completion and validation
  • Grails 2.2 included in the GGTS distribution and available on the dashboard
  • Groovy 2.0.6 compiler now included in the GGTS distribution.

Both tool suites ship on top of the latest Eclipse Juno SR2 maintenance builds (not yet the final Eclipse Juno SR2 release). We still recommend to use the Eclipse-3.8-based versions of STS and GGTS for optimal performance.

The 3.2.0 release is scheduled for early March 2013 - shortly after the Eclipse Juno SR2 release.

To download the distributions, please go visit:

Detailed new and noteworthy notes can be found here: STS/GGTS 3.2.0.M2 New & Noteworthy.

Enjoy!

Seiten