InfoQ

News

Article: Getting Started With Spring Integration

Posted by Abel Avram on Jan 20, 2009

Community
Architecture,
Java,
SOA
Topics
ESB ,
EAI
Tags
Enterprise Integration Patterns ,
Spring Integration

In this article, Joshua Long introduces the readers to Spring Integration, an extension of the Spring framework supporting the Enterprise Integration Patterns. After a short introduction into Enterprise Application Integration (EAI), the article presents an example of the integration between an email application and a blogger one.

Read: Getting Started With Spring Integration

Joshua’s integration example allows one to publish an email containing a blog post to a certain address where it is automatically processed and published on the blog. The example focuses on the Spring Integration’s XML configuration which directs the framework to do the messaging job between the two applications.

Resource: the source code.

11 comments

Watch Thread Reply

Re: Getting Started With Spring Integration by Sasa Vender Posted Jan 20, 2009 9:33 AM
"Vend" or "Send"? by Dave Macpherson Posted Jan 20, 2009 2:16 PM
Great article by Srini Penchikala Posted Jan 21, 2009 12:18 AM
Spring Integration vs. Apache Camel by Lari Hotari Posted Jan 21, 2009 2:17 AM
Re: Getting Started With Spring Integration by Gaetano Miranda Posted Jan 21, 2009 8:36 AM
Do we even need ESB? by Oleg Zhurakousky Posted Jan 21, 2009 10:31 AM
SOA without the Complexity by Tom McCuch Posted Jan 21, 2009 11:07 AM
Great article... by Adam FitzGerald Posted Jan 21, 2009 4:12 PM
Distributed Spring? by Dhirendra Negi Posted Feb 8, 2009 11:54 PM
Very interesting by Tai Truong Posted May 7, 2009 5:57 AM
Re: quite similar to the new OpenAdaptor by Sarwar Bhuiyan Posted May 14, 2009 6:26 AM
  1. Back to top

    Re: Getting Started With Spring Integration

    Jan 20, 2009 9:33 AM by Sasa Vender

    Nice article, thanks.

  2. Back to top

    "Vend" or "Send"?

    Jan 20, 2009 2:16 PM by Dave Macpherson

    I'm assuming the the word "vend" throughout this article is "send"? Perhaps a quick "vind and veplace" is in order ;)

  3. Back to top

    Great article

    Jan 21, 2009 12:18 AM by Srini Penchikala

    Hi Josh, Great article. I was able to run the sample application w/o much extra setup effort. The example is simple but it's a good introduction to Spring Integration framework architecture. SI brings the power of Dependency Injection (DI) that Spring Framework has been famous for and EIP patterns implementation together to nicely manage the resources (there are more than few of these resources when you are working on a real-world asynchronous messaging system) and lets you focus on business logic rather than messaging infrastructure code.

  4. Back to top

    Spring Integration vs. Apache Camel

    Jan 21, 2009 2:17 AM by Lari Hotari

    How does Spring Integration compare to Apache Camel (camel.apache.org/)?

    Camel uses Spring for configuration (integrates nicely to spring based approach) and it's possible to deploy Camel "applications" to a OSGI container (cwiki.apache.org/confluence/display/CAMEL/tutor...). Is Camel a direct competitor?

  5. Back to top

    Re: Getting Started With Spring Integration

    Jan 21, 2009 8:36 AM by Gaetano Miranda

    Nice article. I'd like to remark that I don't think SOAP(doc/lit) and REST are examples of RPC integration style.

    Thank You

  6. Back to top

    Do we even need ESB?

    Jan 21, 2009 10:31 AM by Oleg Zhurakousky

    "Because Spring Integration is so lightweight (you deploy the Spring Integration server with your application; you don't deploy your application to Spring Integration). . ."

    Well said and raises an interesting point.
    Do we even need ESB as a product onto which we deploy applications specifically designed around such product or EAI in general should be looked at as an enabling framework used inside of your JEE or any other type application allowing integration concerns to be handled as they arise. Spring Integration allows just that.

  7. Back to top

    SOA without the Complexity

    Jan 21, 2009 11:07 AM by Tom McCuch

    Great article, Thank you!

    SOA is an architectural pattern. A pattern, by definition, is the encapsulation of a complex system into a reusable component. Patterns are meant to describe "building blocks" for YOUR solution - they are not meant to be solutions in of themselves. Patterns therefore lend themselves to be best implemented by lightweight, embeddable frameworks that serve to support your solution, not heavy, commercial-off-the shelf products that aim to control it. This is where the big vendors have all gone wrong with SOA - and where SpringSource, yet again, has gotten it right with Spring Integration.

  8. Back to top

    Great article...

    Jan 21, 2009 4:12 PM by Adam FitzGerald

    Thanks for the great article, Josh. I have added it to the SpringSource community web site. I also want to point out something regarding adapters. If users of Spring Integration want to share the adapters they develop with others they should check out the new
    Spring Integration Adapters project in Spring Extensions.

    Adam FitzGerald
    SpringSource

  9. Back to top

    Distributed Spring?

    Feb 8, 2009 11:54 PM by Dhirendra Negi

    Are we heading towards more heavyweights?!

  10. Back to top

    Very interesting

    May 7, 2009 5:57 AM by Tai Truong

    I am also watching on Spring Integration (SI) from the very beginning and since its release I have succesfully used SI for implementing a lightweight integration platform. It is in production for some customers and runs pretty stable :-).
    One of things I like in SI is how they it takes care of many thinks to make integration transparent: it wires all the endpoints together into an integration flow and encapsulates the message processing. It is component-base and I can implement by translators, processors and any other endpoint without a dependency to any Spring class. This I haven't seen from other API like Mule or OpenAdaptor.

    In the near future I will post my experiences in my Blog. If you are interested I have also posted a summary about the concepts of Messaging and EI:
    taitruong.wordpress.com/2009/04/20/enteprise_in...

    Cheers Tai

  11. Back to top

    Re: quite similar to the new OpenAdaptor

    May 14, 2009 6:26 AM by Sarwar Bhuiyan

    Hi there,

    I was wondering if you had a look at the new Open Adaptor as it is also spring based and for the most part you can use their out of the box components in a spring xml file. If you need to write processors and endpoints, you can extend some basic interfaces that they have. I guess that may or may not always be necessary but it's still quite flexible in case you have a lot of custom requirements.

    Sarwar

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.