Wednesday Apr 22, 2009

RESTify your world and put it in a cache

rsd.png This is the first in a series of blog posts where I discuss about my latest work: a "RESTful Soa Datagrid". It is a work based on two very strategic Oracle products: Oracle Service Bus and Oracle Coherence. The main idea I started from, is well explained in this blog post by James Bayer: the use of Oracle Service Bus to transform any REST request to SOAP ones. I extended this concept trying to create a OSB pipeline that does the following tasks: 1) accepts REST requests 2) checks if the result has already been cached (into Oracle Coherence) 3) if yes, it returns immediately the cached result 4) if not, it dinamically builds the SOAP message (taking and transforming parameters from the URL) 5) sends the SOAP request 6) transforms the XML response into JSON format 7) put it in the cache 8) returns it to the client (browser) In other words, it's a powerful REST to SOAP proxy (with cache). The only thing you need to do is filling a very simple XML file in order to map/enable this kind of transformation. I tried to use it with a Siebel CRM 8.0 as backend and it works like a charm: every Siebel SOAP Web Services are exposed as resources to the client. I know that Siebel developers are working to do the same natively, but in the meantime it could be a good solution. To allow OSB to communicate through Oracle Coherence, I used a great custom work developed by Bassam Hijazi (a OSB transport for Coherence) I will post other entries on this topic, explaining it in detail and allowing you to download the OSB pipeline... so stay tuned! :) In the meantime, please, take a look at these slides (I suggest you to download them from slideshare.net because they contain some useful animations, not well visible here): [Read More]
About

bocadmin_ww

Search

Categories
Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today