The functionality of an ESB is described in general terms in the Java Business Integration (JBI) specification (Ten-Hove, Walker 2005). JBI implements a component architecture. JBI is based primarily on two constructs: service engines and binding components. The service engines contain the business logic, while the binding components merely act as a proxy for the service users (Wallrab 2005).
The tasks of a JBI component are as follows: