Switch to the store?

JBoss ESB Beginner's Guide

More Information
  • Install, configure, administer, start and stop the JBoss Application Server (AS) and then deploy JBoss ESB onto JBoss AS.
  • Run the JBoss ESB example “quickstart” sample applications, so that you understand the applications’ output, and how to debug the JBoss ESB application failures
  • Build custom JBoss ESB applications with JBoss ESB’s out-of-the-box actions or your own action code
  • Use a service registry to provide access to your services and store and access your metadata
  • Integrate your custom application with other applications through the protocols supported by JBoss ESB gateway listeners
  • See how the behavior of services can alter through content-based routing and message transformation
  • Use other JBoss open source projects such as the JBoss AS and JBDS with JBoss ESB to create, deploy, and administer services
  • Integrate existing web services with your applications’ services over JBoss ESB

You may often have wondered if there is a better way to integrate disparate applications than error-prone "glue code". JBoss ESB is just that solution as it can help solve common but difficult problems: writing new code that can be re-used and maintained, and integrating together new and old systems. JBoss ESB takes care of routing and processing service requests, leaving you to concentrate on your system's design and development.

The JBoss ESB Beginner’s Guide gets you up and running quickly with JBoss ESB to build your own service-based applications, with enhanced communication and organization. You will learn how to create new applications or to integrate combinations of new and legacy applications. Detailed examples get you creating your own services, and deploying and administering them with other JBoss Open Source tools.

Through hands-on examples, this book shows you how JBoss ESB enables you to design your system as services that are loosely coupled together by sending and receiving messages. Your services can execute your own custom code, or make use of JBoss ESB’s extensive set of out-of-the-box actions to perform specific tasks. The JBoss ESB Beginner’s Guide shows you the tools you can use to build re-usable and maintainable service-based applications with JBoss ESB, and teaches you by example how to use these tools.

  • Develop your own service-based applications, from simple deployments through to complex legacy integrations
  • Learn how services can communicate with each other and the benefits to be gained from loose coupling
  • Contains clear, practical instructions for service development, highlighted through the use of numerous working examples
Page Count 320
Course Length 9 hours 36 minutes
ISBN 9781849516587
Date Of Publication 25 Jan 2012
Downloading JBoss ESB
Downloading and installing an application server
Time for action – downloading and installing JBoss AS
Choosing which JBoss ESB distribution is right for you
Time for action – downloading and installing jbossesb-4.10.zip
Time for action – deploying JBoss ESB to JBoss AS
Keeping things slim
Time for action – modifying a profile
Testing the installation
Time for action – testing the installation
Looking at logs
Time for action – viewing the deployment of an application in the server.log
Time for action – examining an MBean
What do you do if you see an error?
The quickstarts
Anatomy of a deployment
Time for action – deploying the quickstart
Deploying a JBoss ESB archive remotely
Time for action – accessing the admin console
Time for action – performing the deployment
Introduction to JBDS
Time for action – downloading JBDS
Time for action – installing JBDS
Running JBDS
Time for action – setting up the ESB runtime in JBDS
Time for action – using JBDS to run the quickstart
Deploying the quickstart in JBDS
Time for action – deploying the quickstart
Preparing JBoss Developer Studio
Time for action – opening the Chapter3 app
Examining the structure of ESB messages
Time for action – printing the message structure
Time for action – examining the main payload
Time for action – examining the header
Configuring through the ConfigTree
Time for action – examining configuration properties
Service pipeline and service invocation
Time for action – examining exceptions
Time for action – examining exceptions
Composite services
Security context
Understanding actions
What is an action class?
The action chain
Custom actions
Out-of-the-box (OOTB) actions—how and when to use them
Time for action – running the quickstart
Time for action – running the quickstart
Time for action – implementing content-based routing
Time for action – let's see how notifiers work
Chapter bibliography
The bus
Preparing JBoss Developer Studio
Time for action – creating File Filters
Time for action – opening the Chapter5 app
Transport providers
Time for action – using a File provider
Time for action – testing InVM transactions
Time for action – using lock-step delivery
Time for action – increasing listener threads
Provider configurations
What is a gateway and a notifier?
Preparing JBoss Developer Studio
The JMS gateway
Time for action – using the JMS gateway
The File gateway
Time for action – using the File gateway
The HTTP gateway
Time for action – using the HTTP gateway
The Camel gateway
The FTP gateway
The UDP gateway
Time for action – using the UDP gateway
The JBoss Remoting gateway
Time for action – using the JBR gateway
The Groovy gateway
The SQL gateway
Time for action – using the SQL gateway
The JCA gateway
The registry—what, how, and why?
UDDI—the registry's specification
jUDDI—JBoss ESB's default registry
Time for action – looking at the jUDDI registry database
Other supported UDDI providers
Custom registry solutions
End-point reference
Time for action – looking at EPRs
JAXR—introducing the Java API for XML registries
Load balancing
Registry maintenance and performance
Registry interceptors
Time for action – querying the UDDI server
Chapter bibliography
Preparing JBoss Developer Studio
Time for action – preparing the Chapter8 application
Time for action – switching consoles
Exporting ESB services as a web service
Time for action – running the sample
Time for action – securing the sample
ESB web service client
Time for action – ESB SOAP client
Time for action – Incorporating the Wise SOAP Client
Co-located web services
Time for action – incorporating a SOAPProcessor client
Web service proxies
Time for action – incorporating SOAPProxy into the application
Tweaking HttpClient
SOAPProxy security pass through
Time for action – SOAPProxy security pass through


Len DiMaggio

Len DiMaggio stumbled into computer programming at business school and has never looked back. He considers himself very lucky to have always worked with and for fun and interesting people during his over two decades tracking elusive software bugs. One of his earliest work experiences was accompanying his first manager on long walks to collect blunt instruments to be used to “break in” new technical user documents. Len has worked for some of the better known pioneering technical companies such as DEC, BBN, GTE, Rational, IBM and now JBoss by Red Hat. Len is the software test team lead for the open source JBoss Service Oriented Architecture Platform (SOAP) which is built on Jboss ESB. This is Len's first book. He is a “Most Valuable Blogger” at Dzone where he is a frequent contributor. Len has also written over 50 articles for Dzone, Red Hat Magazine, Dr. Dobbs' Journal and other publications. Len writes a blog that is (mostly) dedicated to software testing subjects (http://swqetesting.blogspot.com/), is a proud member of the JBoss community (http://community.jboss.org/people/ldimaggio) and, when he is not testing software, is a frequent contributor to Fotopedia.

Kevin Conner

Kevin is the Platform Architect for the SOA platform within JBoss, a division of Red Hat. After graduating from Newcastle University Kevin worked as a kernel programmer with Integrated Micro Products, developing fault tolerant network drivers. IMP were later acquired by Sun Microsystems where he was to discover Java. He has over fifteen years experience of Java, predominately Enterprise technologies, which he has used to develop software for technical, financial and local government clients. Before joining JBoss he was a Senior Engineer with Arjuna Technologies, working on the transaction products.

Magesh Kumar B

Magesh Kumar B. is a Senior Software Engineer at JBoss a division of Red Hat. He has a Masters in Computer Applications from Coimbatore Institute of Technology. His passion is coding in Java and he has architected many enterprise applications prior to Red Hat. His project contributions include JBoss WS and JBoss Portal. His current projects are JBoss ESB and SwitchYard. He hails from Ooty and lives in Bangalore, India with his wife, three kids and his parents. You can reach him at mageshbk@gmail.com. This is his first book.

Tom Cunningham

Tom Cunningham is currently the project lead for JBossESB and has worked for Red Hat since 2007 on JBoss ESB and SwitchYard. Tom is an active committer on the Apache jUDDI and Apache Scout projects. Tom received a B.S. in Computer Science from Georgetown University and a M.S. in Computer Science from Arizona State University and has worked in software development for over 14 years. I'd like to thank my sons Ben and Nate, my wife Sonia, and my parents for their support in writing this book.