One of the most attractive features of Spring is that both the Spring development team and the community at large are constantly developing it. This has led to a framework that already encompasses a great deal of the tools and techniques a programmer must use when building an application. The number of tools and techniques Spring supports is growing all the time, and Spring is constantly improving its existing feature set. In this appendix, we discuss a selection of the new features and improvements that are currently in development or are scheduled to begin development at any time. In particular, we look at the following:
BeanFactory script support: Using script support, you can define bean dependencies using a script language, currently BeanShell or Groovy. Spring then dynamically creates instances of your script classes as required. In this section, we take a quick peek at how this works using the Groovy scripting language.
J2SE 5.0 annotations metadata support: As you saw in Chapter 12, Spring provides an implementation-independent mechanism for using source level metadata in your applications via the Attributes interface. As of version 1.1 of Spring, the only implementation of the Attributes interface was CommonsAttributes, which used the Jakarta Commons Attributes framework. Currently under development, the AnnotationsAttributes class allows J2SE 5.0 annotations to be used in place of Commons Attributes for applications running on a 5.0-compliant JVM.
Spring JMX: Using Java Management eXtensions (JMX), you can expose and manage application components in a standard way. JMX has been around for quite a while and, as of version 5.0 of J2SE, is now a standard part of the Java platform. Spring JMX simplifies the use of JMX in your application by removing the need to create much of the JMX plumbing code by hand. In this section, you see how to expose your Spring beans via JMX, how to access JMX-managed resources using proxies, and how to use JSR-160 support for remote JMX management.
Spring JMS: As you saw in
JasperReports support: The Spring MVC framework is a major part of the overall framework and already provides comprehensive support for a wide range of view technologies. Soon to be added to this range is support for JasperReports, which allows you to add reporting capabilities to your Spring-based applications quickly and easily.
Note that many of the features we discuss in this appendix are still in development and may change before they are released. For that reason, we do not go into great detail on every single feature; instead, we simply discuss what the features will do for you and present some simple examples.
To run the JSR-175 annotation example, you need to install the J2SE 5.0 JDK on your machine, and you need to check out the samples module, which contains the AnnotationsAttributes class, from the Spring CVS server.