WSO2 SOA Enablement Server provides various means for integrating existing systems and applications. Thanks to its flexible architecture, the integration can be done on several levels of message processing, from custom serialization of data types down to the binary level. This is shown in Figure 25 .
WSO2 SOA Enablement Server provides the following integration points, starting at the highest level:
Application Level - In the application level integration layer, you can bridge different technologies by, for example, using a Web service on one side and CORBA on the other side.
For the most common scenario in WSO2 SOA Enablement Server, see J2EE Integration, where the WSO2 SOA Enablement Server integration of Web services and J2EE worlds is described. This integration uses the application level to bridge J2EE communication styles (JNDI lookup, RMI invocations) and Web services (WSDL , SOAP).
Object-oriented distributed systems, including CORBA, DCOM, and J2EE, often use Remote References. This concept is also available in WSO2 SOA Enablement Server as an essential part of WSO2 SOA Enablement Server Remoting. Remote References let you pass a reference for a particular stateful Web service instance to the client side. Read Remote References to see how you can transparently use this common technique.
(De)serialization between Application and XML/SOAP Protocol Levels - The XML representation and programming language representation of a particular data type can differ from application to application. To enable communication between such applications, a custom mechanism converts programming data type instances to XML data type instances. This mechanism is fully configurable it effectively integrates applications with incompatible mapping between programming language data types and XML data types.
This integration point is used by WSO2 SOA Enablement Server to integrate with Microsoft .NET. Please see the .NET Integration chapter for more information about WSO2 SOA Enablement Server Server integration with the Microsoft .NET Framework.
XML/SOAP Protocol Level - Thanks to the pluggable XML protocol layer, WSO2 SOA Enablement Server understands messages carried by various XML Protocols (ebXML, SOAP 1.1, SOAP 1.2, and others). You can use this feature to mediate communication between Web services speaking with incompatible XML protocols.
Raw Level - You can integrate different transport protocols using this level. This can effectively bridge communication between applications that use different transports. In this case WSO2 SOA Enablement Server is used as a transport bridge between these applications.
The custom transport interceptor mechanism provided by WSO2 SOA Enablement Server on this level changes the incoming and outgoing information as needed. See the XSLT Interceptor chapter for information on WSO2 SOA Enablement Server's built-in XSLT interceptor, which can be used to transform XML-based data during dispatching.