Juergen Hoeller

Juergen Hoeller

Juergen Hoeller is co-founder of the Spring Framework open source project and has been serving as the project lead and release manager for the core framework since 2003. Juergen is an experienced software architect and consultant with outstanding expertise in code organization, transaction management and enterprise messaging.

Recent Blog posts by Juergen Hoeller

Portability at the Framework Level

Engineering | April 28, 2008 | ...

Portability is a key factor in the Spring universe. We believe in portability at the framework level: Application components are written against a specific framework (or framework generation), such as Spring 2.5; the framework is then in turn responsible for adapting onto any underlying hosting environment. However, the specific application framework is above and distinct from the hosting environment. A brand-new framework version may be deployed onto an established generation of the hosting platform, as long as the fundamental capabilities of the environment are sufficient. This approach…

Spring Framework 2.5.2 Released

Releases | March 03, 2008 | ...

Dear Spring community,
 
I'm pleased to announce that Spring Framework 2.5.2 has been released. Download | Documentation
 
This is the second update release in the Spring 2.5 series. It fixes all issues reported since 2.5.1 and introduces various enhancements throughout the framework:

  • Restored full Spring 2.0 compatibility for specific extension points
  • Extended SQL error code mappings for MS SQL, MySQL, PostgreSQL and Oracle
  • Revised JDBC BeanPropertyRowMapper with refined value extraction logic
  • Support for the GlassFish/JBoss JCA WorkManager as TaskExecutor backend
  • Support for Eclipse Persistence Services 1.0 M4 (the EclipseLink JPA provider)
  • Compatibility with the WebSphere JPA provider (derived from OpenJPA)
  • @RequestMapping supports "!myParam" expressions for non-presence of a parameter
  • @RequestMapping's "params" attribute supported at the type level as well
  • Revised JSP CheckboxesTag and RadioButtonsTag (for strict HTML compliance)
Please see the changelog for details.

Spring 2.5's Comprehensive Annotation Support

Engineering | January 28, 2008 | ...

One of the central themes behind Spring 2.5 is comprehensive annotation-based configuration. We've been talking and blogging a lot about @Autowired, about Spring MVC's @RequestMapping and also about the new support for annotated tests written with JUnit4 or TestNG. @Autowired is certainly the central one of Spring 2.5's annotations, being available for use in service components, web components, unit tests - even domain objects when using Spring's @Configurable with AspectJ weaving. Spring MVC's @RequestMapping is equally flexible, supporting many variants of handler method signatures.

Today I…

Spring Framework 2.5.1 and 2.0.8 released

Releases | January 09, 2008 | ...

Spring 2.5.1 is the first bug fix and enhancement release in the Spring 2.5 series. It closes a couple of gaps found in Spring 2.5 final and introduces various new features in the context of Java 6 and Java EE 5 support:

  • Java-5-specific Model interface for use with MVC handler methods
  • @ModelAttribute's default attribute names are consistently derived from the *declared* parameter/return type
  • Support for last-modified handling in @RequestMapping handler methods (through the WebRequest interface)
  • SpringBeanAutowiringSupport class for self-autowiring classes within a web app (e.g. JAX-WS endpoints)
  • EJB3-compliant SpringBeanAutowiringInterceptor for processing Spring's @Autowired in EJB3 SBs/MDBs
  • Remoting support for the HTTP server that is included in Sun’s JDK 1.6 (covering HTTP invoker, Hessian and Burlap)
  • "jms:listener-container" tag supports a concurrency range (e.g. "3-5"), for specifying a minimum number of consumers
  • Tiles2 support works on JDK 1.4 as well
  • Any many further enhancements in the details…

Spring 2.0.8 is a bug fix release in the Spring 2.0 series, addressing all issues reported since 2.0.7 and backporting various minor refinements from Spring 2.5.1. This is the last planned 2.0.x release. We recommend upgrading to Spring 2.5.1 where lots of new features are waiting for you to try them...

Spring Framework 2.5 Released

Releases | November 19, 2007 | ...

Dear Spring Community,
 
We are pleased to announce that the Spring Framework 2.5 final release is now available.

Spring 2.5 RC1 Released

Download | Support | Documentation | Changelog 

Spring 2.5 enhances Spring 2.0 with many exciting new features, including:

  • Full Java 6 and Java EE 5 support (JDBC 4.0, JTA 1.1, JavaMail 1.4, JAX-WS 2.0)
  • Full-featured annotation-driven dependency injection, including support for 'qualifiers'
  • Support for auto-detecting application components in the classpath and auto-configuring them as Spring managed objects
  • A new bean name pointcut element in AspectJ pointcut expressions
  • Built-in support for AspectJ load-time weaving based on the LoadTimeWeaver abstraction
  • New XML configuration namespaces "context" and "jms", for maximum convenience
  • A completely revised integration test framework, with first-class support for JUnit 4 and TestNG
  • A new annotation-based controller model for Spring MVC supporting Servlet and Portlet environments
  • Extended SimpleJdbcTemplate functionality, including support for named SQL parameters
  • Officially certified WebSphere support
  • The packaging of Spring Framework jars as OSGi-compliant bundles out of the box
  • The ability to deploy a Spring ApplicationContext as a JCA RAR file, for headless application modules
  • JCA 1.5 message endpoint management, for Spring-managed JMS and CCI message listeners

Check out the series What's New in Spring 2.5? for a walkthrough of the new Spring 2.5 features, including information on how to deploy the Spring sample applications that demonstrate them.

We recommend upgrading to Spring 2.5 from all previous Spring 2.0.x versions in order to benefit from the new features as well as the significant performance enhancements that Spring 2.5 has to offer. Spring 2.5 is designed as a drop-in replacement for Spring 2.0, except for the slightly restructured jar file contents (please see the readme file in the distribution for more information on this).

Please note that Spring 2.5 is still compatible with JDK 1.4.2+ and J2EE 1.3+. Java 1.4 users, for example on WebLogic 8.1 or WebSphere 5.1/6.0, are very welcome to upgrade to Spring 2.5 as well.  We recommend putting the backport-util-concurrent jar on the classpath when running on Java 1.4, which allows Spring and your applications to benefit from significant concurrency enhancements.

Enjoy Spring 2.5,

Juergen Hoeller
Lead, Spring Framework Development

Annotated Web MVC Controllers in Spring 2.5

Engineering | November 14, 2007 | ...

Spring 2.5 introduces an approach for writing annotated Web MVC controllers, which we haven't been blogging about much yet... I'll take the opportunity to give you an overview of what Spring MVC is really about these days.

Spring MVC is essentially a request dispatcher framework, with a Servlet API variant and Portlet API variant. It operates very closely within its hosting environment - either Servlets or Portlets. Think about Spring MVC as providing foundational facilities and conveniences on top of the Servlet/Portlet container: e.g. flexible request mappings, separation between controller…

Spring 2.5 RC1 is here - introducing new configuration approaches

Engineering | October 24, 2007 | ...

As some of you will have noticed already, Spring 2.5 RC1 has finally been released on Monday and is waiting for you to give it a test drive! Spring 2.5 is in many ways the release that completes Spring 2.0's mission: providing the most flexible and most comprehensive configuration model for both Java 1.4 and Java 5. Spring 2.5 focuses on particularly comprehensive support for Java 5, introducing various further annotations options. I'd like to take the opportunity to point out the unifying themes behind this release:

Spring 2.5 allows for convenient externalized configuration while also keeping it as concise as possible. This is building on Spring 2.0's support for XML schema namespaces, with Spring 2.5 introducing new "context" and "jms" configuration namespaces. The latter is a particularly good example for the value-add that a Spring configuration namespace can provide - definitely worth adopting if you're using Spring 2.0 style message-driven objects! Additionally, Spring allows for programmatic bootstrap with no XML involved as well

Spring Framework 2.0.7 Released

Releases | October 01, 2007 | ...

Dear Spring community,

I'm pleased to announce that Spring 2.0.7 has been released.

Spring 2.0.7 is a bug fix and minor enhancement release in the Spring 2.0 series, addressing all issues reported since 2.0.6 and backporting various refinements from 2.1 M4.

Spring 2.0 Released

 

Please see the changelog and JIRA roadmap for all the details of the issues addressed in this release.

Juergen Hoeller
Lead, Spring Framework Development
Interface21 - http://www.interface21.com

 

Spring Framework 2.1 turns into Spring Framework 2.5!

Engineering | September 10, 2007 | ...

My first blog post - and what a big announcement to make :-)

After a series of Spring 2.1 milestone releases, we've been reviewing the overall set of features that we introduced:

  • full Java 6 and Java EE 5 support (JDBC 4.0, JTA 1.1, JavaMail 1.4, JAX-WS 2.0, etc)
  • full-featured annotation-driven dependency injection (including support for 'qualifier' annotations)
  • support for component scanning in the classpath (autodetecting annotated classes)
  • bean name pointcut element in AspectJ pointcut expressions
  • built-in support for for AspectJ load-time weaving (based on Spring's LoadTimeWeaver abstraction)
  • further XML configuration namespaces ("context", "jms") for maximum convenience
  • extended SimpleJdbcTemplate functionality (support for named parameters etc)
  • officially certified WebSphere support (support for the WebSphere 6 UOWManager facility etc)
  • Spring framework jars are shipped as OSGi-compliant bundles out of the box
  • Spring ApplicationContext can be deployed as JCA RAR file (for headless application modules)
  • JCA 1.5 message endpoint management (for Spring-managed JMS and CCI message listeners)
  • completely revised framework for integration tests (with support for JUnit 4 and TestNG)
as well as many refinements in the details. Almost all of those features are available in the recently released 2.1 M4 already.

We concluded that this goes significantly beyond what we originally planned for Spring 2.1. The version number 2.1, as used for the milestones, does not reflect the significance and the comprehensiveness of the features in this major release.

So I'm pleased to announce that the 2.1 milestones will seamlessly turn into Spring Framework 2.5 as the upcoming major release! Spring 2.5 is scheduled for final release in…

Spring Framework 2.1 M4 Released

Releases | September 10, 2007 | ...

Dear Spring Community,

I'm pleased to announce that Spring Framework 2.1 M4 has been released! This milestone release introduces:

  • 'qualifier' annotation support for choosing a specific @Autowired match;
  • our next-generation Spring TestContext Framework with support for JUnit4;
  • SimpleJdbcCall operation object for stored procedure calls;
  • support for autowiring of scripted objects (Groovy, JRuby, BeanShell);
  • support for Tiles2 views in Spring Web MVC.

Spring 2.1 M1 Released

 

Which leads me to some further exciting news...

We've been reviewing the overall set of features that we introduced in the recent 2.1 milestones:

  • full Java 6 and Java EE 5 support
  • full-featured annotation-driven dependency injection
  • support for component scanning in the classpath
  • "beanName" pointcut element in AspectJ pointcut expressions
  • built-in support for AspectJ load-time weaving
  • further XML configuration namespaces (context, jms)
  • extended SimpleJdbcTemplate functionality
  • officially certified WebSphere support
  • Spring ApplicationContext can be deployed as RAR file
  • JCA 1.5 message endpoint management (for JMS and CCI)
  • completely revised framework for integration tests

We concluded that this goes significantly beyond what we originally planned for Spring 2.1. The version number 2.1, as used for the milestones, does not reflect the significance and the comprehensiveness of the features in this release.

So I'm pleased to announce that the next release will be called Spring Framework 2.5 RC1, with the 2.1 milestones seamlessly leading into Spring Framework 2.5 as the upcoming major release! Check out the Interface21 team blog for the official announcement and for upcoming posts on specific Spring 2.5 features as we move closer to the final release.

Spring 2.1 M4 is here. Long live Spring 2.5! :-)

Enjoy,

Juergen Hoeller
Lead, Spring Framework Development
Interface21 - http://www.interface21.com

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