Home Web Development Spring Integration Essentials

Spring Integration Essentials

By CHANDAN K PANDEY
books-svg-icon Book
eBook $19.99 $13.98
Print $32.99
Subscription $15.99 $10 p/m for three months
$10 p/m for first 3 months. $15.99 p/m after that. Cancel Anytime!
What do you get with a Packt Subscription?
This book & 7000+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook + Subscription?
Download this book in EPUB and PDF formats, plus a monthly download credit
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook?
Download this book in EPUB and PDF formats
Access this title in our online reader
DRM FREE - Read whenever, wherever and however you want
Online reader with customised display settings for better reading experience
What do you get with video?
Download this video in MP4 format
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with video?
Stream this video
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with Audiobook?
Download a zip folder consisting of audio files (in MP3 Format) along with supplementary PDF
What do you get with Exam Trainer?
Flashcards, Mock exams, Exam Tips, Practice Questions
Access these resources with our interactive certification platform
Mobile compatible-Practice whenever, wherever, however you want
BUY NOW $10 p/m for first 3 months. $15.99 p/m after that. Cancel Anytime!
eBook $19.99 $13.98
Print $32.99
Subscription $15.99 $10 p/m for three months
What do you get with a Packt Subscription?
This book & 7000+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook + Subscription?
Download this book in EPUB and PDF formats, plus a monthly download credit
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook?
Download this book in EPUB and PDF formats
Access this title in our online reader
DRM FREE - Read whenever, wherever and however you want
Online reader with customised display settings for better reading experience
What do you get with video?
Download this video in MP4 format
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with video?
Stream this video
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with Audiobook?
Download a zip folder consisting of audio files (in MP3 Format) along with supplementary PDF
What do you get with Exam Trainer?
Flashcards, Mock exams, Exam Tips, Practice Questions
Access these resources with our interactive certification platform
Mobile compatible-Practice whenever, wherever, however you want
  1. Free Chapter
    Getting Started
About this book
Publication date:
February 2015
Publisher
Packt
Pages
198
ISBN
9781783989164

 

Chapter 1. Getting Started

In this chapter, we will set up our development environment and discuss how we can leverage SpringSource Tool Suite (STS) to its maximum. Although any popular Java development IDE such as Eclipse, intelliJ, NetBeans, and others can be used for developing Spring Integration solutions, pivotal, the company spearheading Spring Integration, recommends that you use STS which is an Eclipse-based IDE.

 

Setting up STS


STS comes with many off-the-shelf plugins, visual editors, and other features, which ease the development of Spring-powered enterprise applications. The look and feel of the IDE is very similar to Eclipse. Install STS by following these steps:

  1. JDK 1.6 and above is a prerequisite, download and install it from http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html.

  2. Set JAVA_HOME properties as explained in the documentation at https://docs.oracle.com/cd/E19182-01/820-7851/inst_cli_jdk_javahome_t/index.html.

  3. Download STS from http://spring.io/tools/sts.

  4. The downloaded file is in ZIP format. Extract it to the preferred folder and it's all set.

  5. Go to <installation-directory>\sts-bundle\sts-3.6.1.RELEASE. The STS.exe file is the executable for launching the IDE.

  6. This step is optional but can help in efficient functioning of the OS editor—change the memory allocation parameter. Locate STS.ini (in the same folder as STS.exe) and change the value of Xmx. For 2 GB, I've put it as Xmx2048m.

 

Creating your first project


The following steps will help you in creating your first project:

  1. Create a Spring Integration project by navigating to File | Spring Project, as shown in the following screenshot:

  2. Under the templates section, select Spring Integration Project - Simple. Provide a project name, for example, sisimple, as shown in the following screenshot:

  3. Fill in the information required to create a Maven-based project, as shown in this screenshot:

  4. Click on Finish; this will create a project with the name that was provided by us (sisimple), as shown in this screenshot:

This project is as simple as it can be. Let's take a quick look at the generated Java classes in the following points:

  • Main.java: This file is located at the path: /sisimple/src/main/java/com/chandan/example/si/. It has the main method and will be used to run this sample. Right-click on this file from the package explorer and click on Run As | Java Application—this will start the program. This class has the code to bootstrap Spring Integration configuration files and load components defined in it. Additionally, it converts user input to upper case.

  • StringConversionService.java: This file is located at the path: /sisimple/src/main/java/com/chandan/example/si/service/. This is the service interface that is used to convert user input to upper case.

  • spring-integration-context.xml: This file is located at the path: /sisimple/src/main/resources/META-INF/spring/integration/. It is the Spring Integration configuration file. It contains the XML-based declaration of Spring Integration components.

  • log4j.xml: This file is located at the path: /sisimple/src/main/resources/. It is the Log4j configuration file. It can be edited to control the log level, appenders, and other logging-related aspects.

  • StringConversionServiceTest.java: This file is located at the path: /sisimple/src/test/java/com/chandan/example/si/. This is the test file for StringConversionService. This will be used to run tests against the service classes.

  • pom.xml: This is the file used for rmaven dependency management, located in /sisimple/. It has entries for all the dependencies used by the project.

It will be a bit heavy and premature to explain each of the components in these classes and configuration files without having built up some theoretical concepts—we will discuss each of the elements in detail, as we move ahead in the chapters.

 

STS visual editor


STS provides visual ways to add different namespaces. Locate spring-integration-context.xml under /sisimple/src/main/resources/META-INF/spring/integration/ and open it. This is the default Spring configuration file. Click on the Namespaces tab to manage different namespaces of Spring Integration. The following screenshot shows imported namespaces for this sample project:

In the same editor, clicking on the Integration-graph tab will open a visual editor, which can be used to add/modify or delete endpoints, channels, and other components of Spring Integration. The following screenshot contains the integration graph for our sample project:

Let's have a quick look at the generated Maven POM—overall, there are three dependencies; only one for Spring Integration, and the other ones for Junit and log4j, as shown in the following screenshot:

 

Spring Integration Scala DSL


This is still in the very early stages and is an incubation project. Scala DSL should not be confused with other EIP implementations being offered in Scala—rather, it is built on top of Spring Integration and provides DSL-based configuration and flow management.

 

Summary


In this chapter, you learned how to set up your IDE and created a basic project. We also tried our hands at the visual editor of STS and covered a quick introduction of the upcoming Scala DSL for Spring Integration. We will leverage this knowledge to build a compelling Spring Integration application using STS throughout the rest of the chapters.

In the next chapter, we will cover how to ingest messages in the application and then how to process them.

About the Author
  • CHANDAN K PANDEY

    Chandan Pandey is an Oracle Certified Enterprise architect with more than 10 years of experience in designing, coding, and delivering enterprise applications using various tools and technologies. He has always been amused by the power of software that reduces the boredom of repetitive tasks and introduces agility and efficiency. He firmly believes that tools, technology, and methodology are a medium to provide a solution and would like to be positioned as a solutions expert rather than limiting his identity to a framework or tool. This is reflected in the breadth and depth of his work; he is proficient not only in traditional languages and frameworks such as Java/JEE and Spring, but also in Groovy and Grails, Vaadin, and Play Framework, to name a few. His domain experience varies from blogging applications, web frameworks, content management systems, and finance, to networking & telecom. For him, the end result should be extendable, scalable, secure, and easy-to-use systems! He believes in community ecosystems and tries to share his learning with larger audiences. He writes regularly at www.chandanpandey.com, and this book is a step forward to connect with the community. When he is not working or writing, he likes to go on road trips with his family to explore new avenues—be it spiritual, historical, or just a leisure tour! India being his home country, he is never short of surprises and variety!

    Browse publications by this author
Spring Integration Essentials
Unlock this book and the full library FREE for 7 days
Start now