- How to convert HTTP Basic Authentication to WS-Security Username Token?
- Generating a simple response using WSO2 Enterprise Service Bus
- WSO2 Enterprise Service Bus and WSO2 Governance Registry Integration

EASY TO START WITH, EASY TO GROW WITH
WSO2 knows that your enterprise has entered the fast-paced, new age of Web 2.0. That’s why we’ve taken a fresh look at old-style, centralized ESB architecture. And we’ve designed our unique Enterprise Service Bus from the ground up–relying on our innovative Carbon technology—to give you a smooth start-to-finish project experience you cannot find elsewhere.
Easy to Acquire and Deploy
Right out of the starting gate, you’ll reap the benefits: You can easily download the complete WSO2 ESB as 100% Open Source, with no up-front license agreement or fees to pay before you get started. And the ESB’s reasonable download size won’t slow you down.
You’ll also find the WSO2 ESB easy to configure through an intuitive graphical interface or a straightforward XML configuration language. This agile approach means faster time to get started in deploying the ESB. No esoteric skills needed. For example, you don’t have to be a programmer or know how to write Java to deploy WSO2’S ESB. If you do encounter a question or problem, WSO2 support services stand shoulder-to-shoulder with you to address the need efficiently.
We’ve reduced common hassles by making the WSO2 ESB fit smoothly into your overall infrastructure. The WSO2 ESB can be deployed to support many architectural patterns, including those demanding high scalability and reliability. It plays well with many popular systems and protocols.
High Performance
Although we’ve worked hard on providing the lowest learning curve and the smoothest development experience, the WSO2 ESB is not a toy. The finely tuned engine offers blazing performance within a flat memory footprint. The fully asynchronous core eliminates limits on concurrent messages and is deeply architected around Web services to ensure messages pass through the system with as little touch as necessary. Our customers successfully rely on the WSO2 ESB for their most demanding high throughput scenarios.
Easy to Manage and Govern
The ESB’s intuitive Web management console makes local or remote management a breeze. And when you use the WSO2 ESB in tandem with the WSO2 Governance Registry, you will have the capability to configure and manage clusters and policies in one place. The WSO2 ESB also has the capability to publish usage stats to the WSO2 Business Activity Monitor, so you can track the health of the system in real time.
You’ll also benefit from the flexibility of WSO2 ESB’s capability to integrate with your existing systems with support for management protocols such as JMX.
Easy on the Budget
The WSO2 ESB offers unbeatable savings on cost of ownership. Not only have you already saved upfront license fees because the WSO2 ESB is 100% true Open Source, but the speed and ease of developing for the ESB means significant savings of developer time. Simple management keeps ongoing costs low. And the great performance means you maximize your investments in hardware you can run the WSO2 ESB on cheaper, less powerful computers.
Easy on the Future
We’ve shown you how you can save time and money on today’s projects with WSO2’s ESB. But your enterprise will grow and your technology needs to grow, too. WSO2’s ESB comes loaded with many built-in core capabilities and extension mechanisms to ensure you have a solid basis for solving needs you aren’t even aware of yet.
To start with, the ESB has 29 built-in mediator types that form the building blocks for sophisticated transformation and routing tasks. The next level allows you to program specific logic in Java or Javascript. And as your enterprise expands and your technology needs increase, you’ll have the flexibility to add in components from the complete WSO2 Carbon platform. This platform encompasses a range of capabilities unmatched in other platforms – business processes, data services, identity services, rules and events processing, and more. You’ll have the capacity to adapt quickly to change and ensure that your architecture evolves gracefully over time.
And partnering with WSO2 will keep you on pace with technological innovations. Open Source development has proven its ability to evolve along with the emerging needs of businesses as they grow and develop. We’ve built a foundation that can help you in your current projects and be part of your enterprise’s technological growth in the coming years.
Contact us for more information about how we can help you.
WSO2 Enterprise Service Bus
- In Action
- Features
- Architecture
Service Virtualization with Security
As a system administrator, Shane is responsible for managing a set of Web Services. His organization makes a strategic decision to expose some of these services directly to the public. As a result, Shane is asked by his CTO to look for a way to open up selected services to the Internet without compromising security. Unfortunately for Shane, the services are hosted in a legacy system which cannot be easily secured using the accepted modern security standards for Web Services. Shane creates proxy services with the WSO2 ESB and configures them to route public requests to the actual Web Services deployed in his organization. He configures the proxy services to accept requests only over the secure HTTPS protocol. He also engages WS-Security on the proxy services so that only a secured client can invoke the proxy services. Shane uses the security policy files provided by the organization’s IT administrators, written in the standard WS-Policy language, to document the precise security requirements for using the services. Many of these policies use the WSO2 Identity Server in concert with the WSO2 ESB to manage the authentication and authorization to the services.
Integrating a Trading partner
Marshall manages his organization’s business messaging systems which are primarily based on the AMQP protocol. His company signs a new partnership deal with a finance company and Marshall’s boss asks him to link up some of their internal systems with the new partner’s systems for quick sharing of data and easy on-line collaboration. The new partner has a business messaging infrastructure which is almost entirely based on the FIX (Financial Information eXchange) protocol. Marshall faces the challenge of connecting their own AMQP applications with a set of FIX applications. While the differences between the two protocols pose a first level of challenge, differences between the actual message formats make it even more complex. Marshall uses the WSO2 ESB to deploy a set of proxy services and expose them over the AMQP protocol. He configures the relevant AMQP applications within his organization to send AMQP messages to the proxy services. Then he configures the FIX transport of the ESB to forward the AMQP traffic to the FIX endpoints of the partner organization. Thanks to the transformation mediators in the ESB, Marshall is able to take advantage of his existing knowledge of widely accepted standard technologies like XSLT and XQuery to efficiently convert between message formats as the messages flow through the ESB.
Adding High Availability to your services
Andrew, a network administrator, has just received the green light from his management to replace their old Web Services container with a group of application servers to achieve better levels of high availability. Lately their Web Services container has been receiving a large number of requests and the old server is hardly able to cope up with the load. Andrew proposed that the single server instance should be replaced with a cluster of three active server instances and a cluster of three backup server instances. The active cluster will receive the requests by default and whenever something goes wrong in the active cluster the backup cluster can be brought into action. Having set up the two clusters, Andrew decides to use WSO2 ESB as the load balancer and the fail over router. WSO2 ESB is configured to load balance the requests among the members of the active cluster, and whenever the active cluster goes down, the ESB automatically switches over to the backup cluster and starts load balancing among the backup servers. Andrew is also able to configure the conditions which should be treated as communication errors by WSO2 ESB.
Initiate transactions to pull data with Task Scheduling
Sally is an ESB administrator with responsibility for managing one of the WSO2 ESB instances for her company. She’s asked by her management to implement a message flow which queries one of their partner’s applications once every 6 hours and log the results in an internal database. And when certain critical conditions are found send an E-mail to the board of directors of the organization, along with writing a separate incident log file. Sally starts by defining a simple periodic task in the WSO2 ESB which injects a request into the service bus once every six hours. Sally is already familiar with the widely accepted cron syntax, so specifying the schedule is a snap. Then she creates a sequence which forwards the injected requests to the partner application over HTTP. The returned messages continue through the sequence, with an XPath expression evaluated on the response XML messages. Sally uses the DBReport mediator of WSO2 ESB to add an entry to the internal database regarding the outcome of the query. Finally depending on the outcome of the XPath evaluation, VFS transport is used to write the local incident log file, and the Mail transport generates the requested E-Mails to the board of directors.
Rule based mediation and Dynamic Configuration
Jim serves as lead architect of an integration project which has adopted WSO2 ESB as the mediation engine. Over time Jim has come to realize that some of the decision making logic for the project can be expressed as a few simple rules. Jim investigates the Rule based decision making capabilities of the WSO2 ESB and develops the decision logic to configure the Rule mediator. This succeeds brilliantly, but over time he realizes that the configurations of message flows, the endpoints and even the Business Rules are changing frequently. While it is easy to change the ESB configuration using the WSO2 ESB management console, Jim prefers an approach that guarantees transactional behavior throughout configuration changes (if the incoming message is using a particular configuration it has to be the same for the outgoing message as well). So he decides to store all the sequence and endpoint configurations and business rules in the embedded WSO2 Governance Registry instance that comes with the ESB. He sets the ESB to obtain its configuration from the registry using a set of registry keys. Now Jim and his team can change the configurations in the registry without touching the ESB configuration. The WSO2 ESB loads the changes dynamically and reconfigures itself at runtime, without getting confused about which messages in flight belong to each configuration. Jim can also set a caching duration for the ESB so that configurations loaded from the registry will be cached for sometime to reduce the number of registry lookups.




