Presentation is loading. Please wait.

Presentation is loading. Please wait.

Real world scenarios with the WSO2 ESB. Three real world scenarios in some detail 1. XML transformation and message augmentation 2. Financial services.

Similar presentations


Presentation on theme: "Real world scenarios with the WSO2 ESB. Three real world scenarios in some detail 1. XML transformation and message augmentation 2. Financial services."— Presentation transcript:

1 Real world scenarios with the WSO2 ESB

2 Three real world scenarios in some detail 1. XML transformation and message augmentation 2. Financial services case – reading legacy files and integrating with JMS 3. The PushMePullYou – using polling to integrate two services

3 XML Transformation of messages with Database augmentation This example illustrates how a database table lookup can be used to augment and transform the message payload, using XSLT transformations Objective

4

5 Configure the external database access Specify SQL and map parameters, and results Transform using XSLT

6

7

8

9 Scenario – Financial Security blocking Database legacy flat file NEW YORK Existing System WSO2 ESB Poll Record->XML XML->XML Send LONDON WSO2 ESB Split/Iterate DBLookup/Filter Transform to MQ Send Existing System XML/JMS

10 Overall ESB flow FileSystemListener NY Sequence Log Out-Only Flatpack E4X Send to London LondonEndpoint LondonSequence Iterate DBReport – log whole msg Filter/Drop NOAC Send

11 Proxies

12 New York – File System Listener

13 New York Sequence

14 Flatpack Mediator http://esbsite.org/resources.jsp?path=/mediators/paulfremantle/FlatPackMediator http://esbsite.org/resources.jsp?path=/mediators/paulfremantle/FlatPackMediator

15 Transforming using E4X

16 Scripting XML with E4X <![CDATA[ var rowset = mc.getPayloadXML() ‏ /* use the default namespace from the Flatpack mediator */ var ns = new Namespace("http://ws.apache.org/synapse/ns/rowset"); /* find all the D6 rows */ var d6 = rowset..ns::row.(@recordname=="D6"); /* create a holder element for the elements */ var output = for (var i=0; i<d6.length(); i++) { var row = d6[i]; /* lookup the important data */ var ActionKey = row.ns::entry.(@name=="ACTIONKEY").text(); var AccNum = row.ns::entry.(@name=="ACCNUM").text(); var ActType = row.ns::entry.(@name=="ACTTYPE").text(); var SecID = row.ns::entry.(@name=="SECID").text(); var SecIDType = row.ns::entry.(@name=="SECIDTYPE").text(); var ONVF = row.ns::entry.(@name=="ONVF").text(); var UnitsEl = row.ns::entry.(@name=="UNITSEL").text(); var RegCode = row.ns::entry.(@name=="REGCODE").text();

17 Scripting XML continued var feed = {ActionKey} {AccNum} {AccType} {SecID} {SecIDType} {ONVF} {UnitsEl} {RegCode} ; output.appendChild(feed); } mc.setPayloadXML(output); ]]>

18 London - Iterate

19 Log the whole message

20 Final steps

21 PushMePullYou

22 Pull n Push scenario

23 Task Configuration specify the task implementation task properties task scheduler configuration

24 Calling the data service external data service endpoint configuration

25 Calling Clearance Service split the message into number of messages transform the individual messages clearance service endpoint

26 Clearance Response transform the responses from the clearance service aggregate the responses from the clearance into one response

27 Summary Covered a set of useful cases  Changing the flow of control  Iteration and Aggregation  Two ways of transforming XML  Reading record formats  Integrating with File-based systems  DBReport and DBLookup

28 Questions

29 Resources WSO2 Webinars  http://wso2.on.intercall.com http://wso2.on.intercall.com WSO2 ESB documentation  http://wso2.org/project/esb/java/1.7/docs /docs_index.html http://wso2.org/project/esb/java/1.7/docs /docs_index.html User List  esb-user@lists.wso2.org esb-user@lists.wso2.org Recent performance testing  http://wso2.org/library/3740 http://wso2.org/library/3740


Download ppt "Real world scenarios with the WSO2 ESB. Three real world scenarios in some detail 1. XML transformation and message augmentation 2. Financial services."

Similar presentations


Ads by Google