Craig Walls has posted a blog entitled Spring Integration:Return of the Bride of FileSucker Strikes Back...With a Vengeance. If it's not obvious enough from the title, the example demonstrates usage of the Spring Integration file-source adapter. It also highlights both the annotation-based model and the spring-integration namespace support. Craig provides all of the information and source code necessary to try out the sample for yourself. If you'd like to learn more after checking out Craig's blog, visit the Spring Integration Home.
Craig Walls has posted a blog entitled Spring Integration:Return of the Bride of FileSucker Strikes Back...With a Vengeance. If it's not obvious enough from the title, the example demonstrates usage of the Spring Integration file-source adapter. It also highlights both the annotation-based model and the spring-integration namespace support. Craig provides all of the information and source code necessary to try out the sample for yourself. If you'd like to learn more after checking out Craig's blog, visit the Spring Integration Home.
Eivind Barstad Waaler has written an article about setting up scheduling in WebSphere using Spring and the CommonJ TimerManager API. The article is complete with a runnable example application and can be read here: Spring Scheduling in WebSphere
In this TheServerSide article, David Syer and Lucas Ward provide an overview of Spring Batch.
Interface21 have made available a new white paper on the topic of "Spring in Production." There's lots of documentation available on Spring's programming and configuration models, but very little written to date that explains what Spring does at runtime and how it manages the request processing pipeline. In this white paper you'll learn about the Spring kernel and the enterprise services layer that sits on top of it, and how these co-operate to manage Spring-powered applications. The white paper also contains a section on tuning Spring-powered applications. I asked many of my colleagues at Interface21 for their hints and tips on how to get the most out of a Spring-powered application in a production setting, and this priceless advice is distilled into over 25 recommendations and suggestions. In this part of the white paper you will:
In this TSS article, Rod Johnson explains what Spring sets out to achieve and how it can help the community develop enterprise Java applications.
... plus others
Interested in a full-course of Spring during Winter? The Spring Experience 2007 conference is taking place in sunny Hollywood, Florida, from Dec. 12th-15th.
In this DevX article, Ramanujam A. Rao explains how to expose existing POJO-driven J2EE applications as web services using Axis2, showing the integration of Spring to facilitate the creation and control of these services.
Tushar Joshi has authored an article titled "Introduction to Spring IDE 2.0". The article describes the required steps and dependencies to install Spring IDE and demos some basic features of version 2.0.
Tushar concludes his article by stating that: "Spring IDE provides features like Spring Explorer, Beans Cross Reference, Graph View and Code completion in the bean XML editor hence making the life of a Spring Framework user easier." #
In this infoQ interview recorded at The Spring Experience in December 2006, Spring Web Flow co-lead Keith Donald talks about how Spring Web Flow works, the abstractions modelled in Web Flow, support for the back button, continuations, how state is saved across web requests, how an existing app may be refactored to use web flows, and how Web Flow interact with web frameworks like Struts, Spring MVC, and JSF at runtime.
Tareq Abed Rabbo blogs on his experience migrating an Axis 1.x based web service to Spring-WS in this blog entry. It makes for interesting reading as there's quite a bit of detail here.
Tareq Abed Rabbo blogs on his experience migrating an Axis 1.x based web service to Spring-WS in this blog entry. It makes for interesting reading as there's quite a bit of detail here.
Using AJAX (via DWR) to perform client-side validation is a useful technique that allows the implementation of both client side and server side form validation, while actually using the same (server-side) validators for both task. Here are a couple of articles that describe this technique.
Generic Validator for Spring MVC and DWR by Jose Noheda, shows one approach. His validators work off annotations in the objects to be validated (this is somewhat orthogonal to the question of validating remotely).
Spring 2.0 introduced the ability to add custom XML namespaces to Spring, essentially specialized dialects of XML usable in a Spring Application Context. It shipped with a number of new namespaces out of the box, such as jee, aop, tx, util, and others. Recent Spring IDE 2.0.x builds have supported the new built-in custom namespaces. In Adding Support for Custom Namespaces, Christian Dupuis shows how to enable Spring IDE to recognize and support your own custom namespaces.
Integrating Java Content Repository and Spring is a detailed infoQ article by Costin Leau which first talks about the Java Content Repository (JCR) spec in general, and then shows how the JCR support in Spring Modules provides a number of benefits when working against any repository supporting the JCR standard.
Unitils is an interesting new open source project trying to make unit testing as easy and maintainable as possible. Together with their 1.0 RC1 release the Unitils team have published Testing Spring - Hibernate applications with Unitils which illustrates using Unitils in a typical Spring/Hibernate application. The way Unitils integrates with DbUnit and automagically does test database maintenance is particularly interesting.
Messaging Interop with JMS & Spring.NET, an infoQ article by Spring Java and Spring.NET developer Mark Pollack, is a detailed article which shows how to achivev interop between Java and .NET, by using JMS and the JMS support classes in the respective frameworks.
In two blog entries, Chris Tam shows demonstrates using Spring 2.0 dynamic language support and iBatis to save any bean written as a script in Beanshell, Groovy or JRuby into database, and then how to load them back.
Using Spring 2.0 Dynamic Language to Save Script Bean Into Database
Using Spring 2.0 Dynamic Language to Load Record from Database to a Scripted Bean
Mark Fisher has written a blog entry on Dynamic DataSource Routing with Spring 2.0's AbstractRoutingDataSource. In most Java applications using DataSources (usually equating to a connection pool), there is one static DataSource, or if there are multiple DataSources, they are static to the DAOs using them. However it is sometimes desireable to be able to dynamically select a DataSoure based on some sort of environmental context, and this article shows one way to achive this.
In Spring IDE, powering ahead, Rod Johnson blogs about some of the great Spring 2.0 specific enhancements coming to Spring IDE, the Spring-specific plugin for Eclipse.
Spring 2.0: What's New and Why it Matters is an infoQ article by Rod Johnson, the first of two part. This in-depth piece is well worth reading for anybody wishing to understand the evolution of Spring 2.0 as it introduces significant new features, and how these combine to provide the simplicity and power that is the central theme of this release.
In a blog entry, Jeff C discusses what steps where necessary to convert a web application into a standalone application. He attributes the ease with which this was accomplished to the design of the frameworks he used -- WebWork, Spring and iBATIS.
In his blog entry, More fun with Spring scopes / Java, Eugene Kuleshov shows another potentially interesting use of the custom scope capability introduced in Spring 2.0. He creates a custom scope which binds to specific request URLs. Effectively this allows any data to be bound to a specific page or whatever request specific artifact the current request URL represents, accessible as a regular Spring bean. Think of it as a permanent Page/Request scope, as opposed to the Servlet spec's regular Page/Request scope, which lives only for the lifetime of the current request.
In his detailed blog entry, Implementing an efficient Id generator with Spring framework / Java, Eugene Kuleshov shows how to implement a high performance ID generator for database-driven Spring applications, with the novel approach of utilizing a Spring 2.0 custom scope as part of the implementation.
Spring Soup with OC4J and MBeans, by Steve Button, is a wll illustrated article which steps throught the process of exposing a Spring service as a JMX managed MBean, in an OC4J environment, by using Spring transparent JMX support. It then shows how the MBean can be viewd and managed in the Application Server Control management console supplied with OC4J.
The Oct. 2006 Oracle monthly newsletter for Java developers is dedicated to Spring framework, and this is just one article linked to from this issue of the newsletter.
Using Oracle TopLink with the Spring Framework, by Lonneke Dikmans, shows how to build a sample application using Spring 1.2.8 and Oracle TopLink with Oracle JDeveloper 10g, step by step.
The Oct. 2006 Oracle monthly newsletter for Java developers is dedicated to Spring framework, and this is just one article linked to from this issue of the newsletter.
How-To : Using EJB 3.0 and Java Persistence API with Spring in OC4J, by Debu Panda, is an article which show an application combining the use of Spring Framework, Java Persistence API (JPA), and EJB 3.0 Sesion beans.
The Oct. 2006 Oracle monthly newsletter for Java developers is dedicated to Spring framework, and this is just one article linked to from this issue of the newsletter.
From the introduction: This example application demonstrates Oracle's support for Spring with EJB 3.0 Session beans, and a container-managed entity manager with Spring's JpaTemplate. This sample uses a Spring-enabled EJB 3.0 Session bean (EmployeeFacade EJB) that uses a Spring bean(EmployeeService bean). The Spring bean uses a Data Access Object (EmployeeDAO) that uses Spring's JpaTemplate to manipulate entities. The persistence unit is managed by the EJB container by using a container-managed entity manager and passing it to Spring using setter injection. The application uses declarative transaction with EJB 3.0. For simplicity and to demonstrate the dependency injection support in the web container we have used a Servlet (InsertServlet) as a controller and it uses dependency injection to inject an instance of EmployeeFacade.