Book Image

WSO2 Developer's Guide

By : Ramón Garrido, Fidel Prieto Estrada
Book Image

WSO2 Developer's Guide

By: Ramón Garrido, Fidel Prieto Estrada

Overview of this book

WSO2 Enterprise Integrator brings together the most powerful servers provided by the WSO2 company for your SOA infrastructure. As an Enterprise Service Bus (ESB), WSO2 Enterprise Integrator provides greater flexibility and agility to meet growing enterprise demands, whereas, as a Data Services Server (DSS), it provides an easy-to-use platform for integrating data stores, creating composite views across different data sources, and hosting data services. Using real-world scenarios, this book helps you build a solid foundation in developing enterprise applications with powerful data integration capabilities using the WSO2 servers. The book gets you started by brushing up your knowledge about SOA architecture and how it can be implemented through WSO2. It will help build your expertise with the core concepts of ESB such as building proxies, sequences, endpoints, and how to work with these in WSO2. Going further, you will also get well-acquainted with DSS data service concepts such as configuring data services, tasks, events, testing, and much more. The book will also cover API management techniques. Along with ESB and DSS, you will also learn about business process servers, the rules server and other components that together provide the control and robustness your enterprise applications will need. With practical use cases, the book covers typical daily scenarios you will come across while using these servers to give you hands-on experience.
Table of Contents (14 chapters)

What this book covers

Chapter 1, Getting Started with SOA and WSO2, discusses the issues that gave rise to SOA, describes its main principles, and explains how to make SOA the standard architecture in our organization. In order to achieve this, we have named the WSO2 product we need WSO2 EI. Finally, we will learn how to install it, configure it, and start it up.

Chapter 2, Developing Integration Projects with WSO2 EI Tooling, explains the most common tasks a developer performs on a daily basis when working with WSO2 EI, such as creating projects and artifacts. We will also learn how to debug our projects, which is a very important task that's performed on a daily basis. Additionally, we will describe how to use the powerful data mapper.

Chapter 3, Building Web Services, explains how to build web services in WSO2 EI and their most common components, such us endpoints and sequences. We will also explain the different ways of creating services in EI service when we need to use a Proxy, an API, or an inbound endpoint, and what is the process for adding the logic to that service using sequences and mediators.

Chapter 4, Building Data Services, explores how to build the dataservices needed to fetch the data required in our service orchestration. Additionally, we will learn some tips to save some time when developing and testing our dataservices as well.

Chapter 5, Transforming the Content of Payload, explains how to transform the message received in the services. We will also learn how to modify the content of the payload using the PayloadFactory mediator or the enrich mediator, without needing to have advanced knowledge of transformation languages such as XSLT or XQuery.

Chapter 6, Conditional Route, helps us know how to create more intelligent services that can route the flow over different ways, depending on the parameters, the URL, headers, and so on. We will also take a look at the filter and switch mediators, which we use to check the payload, or a part of it, over a regex expression.

Chapter 7, Quality of Service, takes you through the quality of service configuration in depth in order to explain how to configure security in the services, apply throttling policies such as specifying a maximum number of requests that can be done for a user in a period of time, and use the cache to improve the performance of the servers, among other things.

Chapter 8, Tasks Scheduling, focuses on the options we have for scheduling tasks inside the EI server. We will also observe the three ways to schedule tasks in the EI server.

Chapter 9, WSO2 Enterprise Integration Logging, covers how to log any information about the message received or the properties we set during our service orchestration. We also learn how to log when we are developing a piece of JavaScript code in our service.

Chapter 10, WSO2 Enterprise Integration Testing, goes through the process of testing our services using the basic built-in feature, and a more powerful tool--SoapUI. Besides this, we will learn how to build mock services and test suites to create a set of test cases that help us validate that the service is working as we expect.

Chapter 11, Integrating with VFS, focuses on the integration of Enterprise Integrator with files, local or remote, handled using the VFS protocol from Apache Commons. We will also cover a variety of file scenarios, such as read, write, and transfer, without processing files over different locations.

Chapter 12, Integrating with JMS - WSO2 EI Message Brokering, explains how to send messages to a JMS queue, as well as how to consume them. We will also learn how to build a typical high-performance scenario where a message is stored in a queue to be processed further by another service, which allows the service to handle a high number of messages per second.

Chapter 13, Introduction to Ballerina, gives a brief introduction to the new programming language called Ballerina, which will be the future of the company.