The complete beginners guide to developing applications with Mule ESB. This class takes developers and guides them from a simple use-case to a complex, multifaceted application. Developers gets tons of hands on time with Mule Studio and come out of the course with confidence and familiarity with the product and how to problem solve with Mule Studio.
Here’s a portion of what you will learn:
- How to develop in Mule, so that you can have confidence to tackle any integration problem
- How to debug applications quickly and effectively
- Ways of developing integration solutions with common transports such as HTTP and JDBC
- Building REST and SOAP web services quickly and easily
- Creating custom Java components to process business logic
- Deploying an application to a standalone server
- Java developers wishing to transition to Mule.
- Enterprise Architects or development managers wishing to get an introduction to Mule but do not want to develop may find the first morning interesting, and can even participate in the first lab.
Mule Essentials goes through the usage of integration technologies and development on Mule. Its primary language basis is in XML, Java, and Spring. As a course it does not cover how to develop in Java or Spring, only how they are used in Mule. Students who attend Mule Essentials should have the following:
- Working knowledge of Java is required, a couple months on the job experience is recommended
- Basic understanding of typical integration technologies, such as HTTP, JMS, JDBC, REST, and SOAP
- Some exposure to XML is recommended.
The most significant requirement for the training is the attendees’ full attention. The pace is rapid, and there is substantial amount of time for individual assignments and lab work. It is encouraged in the program to have people who finish each exercise early help those attendees that have not yet completed the assignments. Attendees who find themselves in the situation where they are forced to tend to outside work can quickly fall behind since labs are progressive in nature. It is best to assume that these people are unavailable during the training and not assign additional duties during this period.
The following software must be installed on students’ computers:
the first day, participants will be introduced to the Mule ESB. They will learn:
- Basic layout and configuration of a Mule application
- The Mule Message and how data is represented in Mule
- How to unit and functional test Mule applications using Junit and the Mule API
- Routing patterns and options including basic filters
Labs on the first day include:
- Introduction to Mule, introduction to the use case for the progressive labs, and basic configurationb
- Basic unit testing on a Mule Application
- Using routing patterns to call multiple endpoints using multicast
- Routing based on Message Properties
Instructors Note: The first day can go as rapidly as students are able to complete the labs. Pre-work to get their development environment setup will greatly enhance the students’ pace. If able, the instructor may start to bring in new material as time allows. A more advanced set of students will often be able to complete the first segment of material and lab work from day 2.
The second day starts to develop more ideas along the lines of routing, with the addition of Message Properties and using Meta-data to enhance the options allowable to the developer. Web Services will be developed both as a Client calling a web service, and as a Server handling requests.
Topics covered on the second day include:
- Message Properties and the 4 different scopes of properties
- Expressions and how expressions are used to route, filter, and transform messages
- Transport Architecture and the most common transport technologies: HTTP, JDBC, JMS, FTP, etc.
Labs performed on the second day include
- The HTTP transport and calling your application from a browser
- Using JDBC to get information from a database
- Using JMS to create a synchronous information request
- Building a SOAP web service and client
- Building a REST web service and client
The end of day 2 leaves developers with the sense of having built a “real” application that can be deployed and used standalone to perform a few basic tasks.
The third day of training goes into how to build custom Mule components. Using advanced tools such as DataMapper. Concluding the training is an introduction to the Mule Management Console and some exercises that many developers would have to attend to on a regular deployment cycle.
Topics covered on Day three Include:
- Developing custom components in mule and getting access to the entire Mule Message in java POJOs
- Spring Properties and how to use them to configure Mule for different environments
- Using the Mule Management Console to control a server and application deployment.
Lab Exercises on Day three Include:
- Building a Custom Transformer and Custom Component
- Using Datamapper to map from XLS to a Database
- Using spring properties to map parameters into the Mule Flow
- Deploying the developed application to the Enterprise Console and a Standalone Server
Mulesoft works to keep the trainings as fulfilling to the students as possible and fully utilize the times allocated. Often there is a little time left over in the last day to answer questions or go over customer use cases.