Cloud Zone is brought to you in partnership with:

Kathiravelu Pradeeban is an Open Source Evangelist. He is a postgraduate student of the Erasmus Mundus European Master in Distributed Computing, a Master of Science joint degree from Instituto Superior Técnico, Lisbon, Portugal, and KTH Royal Institute of Technology, Stockholm, Sweden. He holds a Bachelor of the Science of Engineering (Hons) degree, majoring Computer Science & Engineering, with a first class from the University of Moratuwa, Sri Lanka [Batch 2010]. He is also an old boy of Royal College, Colombo [A/L 2005]. He is highly interested in FOSS development, and is an active participant of the Google Summer of Code (GSoC) program since 2009 - with AbiWord (2009 as a student and since 2011 as a mentor), a light weight word processor, and with (OGSA-DAI) Open Grid Services Architecture Data Access and Integration (2010 as a student), an innovative solution for distributed data access and management, mentored by OMII-UK. His research interests include Distributed Computing and Data mining. Kathiravelu is a DZone MVB and is not an employee of DZone and has posted 23 posts at DZone. You can read more from them at their website. View Full User Profile

WSO2 StratosLive ~ An Enterprise Ready Java PaaS - III

  • submit to reddit

Fig 1. Service Dashboard of ShoppingCartDS
This post is the third in the series of posts, WSO2 StratosLive - An Enterprise Ready Java PaaS. 

Here we will discuss the platform aspect of WSO2 Stratos/StratosLive by going through the simple shopping cart sample that comes with Stratos/StratosLive for the tenants to install readily. Pls refer to WSO2 StratosLive - An Enterprise Ready Java PaaS - I and II, if you haven't read them yet.

In the shopping cart, we have a user portal, admin portal, and the administrative gadgets. Shoppers, operators, and the business administrators will be interacting with the application. Suppliers and the payment gateway are the external services involved. The shopping cart application can also have partner services like or ebay. The solution architecture of the shopping cart application provides an overview of how the entire platform can be used  to host an enterprise software as a service.

Carbon Application
Fig 2. Try It for the Data Service
We can install the sample from Tools -> Shopping Cart of the Stratos Manager. Here we can install the entire shopping cart application by just one click, which spans across all the stratos services. Carbon Application, commonly known as cApp enables this seamless integration. WSO2 Carbon Studio, an eclipse based IDE  for WSO2 Carbon, is used to create the cApps efficiently. Here the sample installer component generates the cApp, uploads it to the tenant registry space, and the application deployer deploys the relevant component of the sample application into the relevant Stratos Service.

WSO2 Data as a Service
The WSO2 Data Services Server, a platform for hosting of data services, with service hosting, service testing, and message tracing features is delivered as a multi-tenant, elastically scaling, metered platform. In the sample shopping cart application that we are discussing,  components talking to the traditional or the legacy database will be deployed into WSO2 Data as a Service (Fig 1). Data as a Service exposes the data stored in a database. Database level operations can be done using the interface provided by Data as a Service (Fig 2). Data is distributed to all the services through the shopping cart data service, handling the database transactions.
WSO2 Enterprise Service Bus as a Service
Fig 3. ESB Proxy Services
The WSO2 ESB, one of the highest performance and lowest footprint approaches to implementing a SOA, with the features of proxy services, sequences, endpoints, and much more, delivered as a multi-tenant, elastically scaling, metered platform. In the sample that we are discussing now, WSO2 ESB as a Service facilitates the service collaboration through the proxy services (Fig 3).

WSO2 Application Server as a Service
Fig 4. Application Server Web Applications
Admin Service is used by the Admin Web Portal (Fig 5). It connects to the shopping cart data service and fetches the data as we request from the web application. Here the admins can add new products, categories, users, and more. Java security is used to authenticate when logging into the admin portal. Product Service is associated with the user portal (Fig 6). Similarly purchasing service handles the purchasing. It updates the finance application through the Financial Connector service, which is an Axis2 Service deployed on WSO2 Application Server as a Service. WSO2 Application Server as a Service is the WSO2 Application Server, supporting the development, deployment, and management of Web Services and Web applications, and service hosting along with tools, delivered as a multi-tenant, elastically scaling, metered platform.

WSO2 Governance as a Service
Fig 5. Admin Web App.
WSO2 Governance as a Service is the WSO2 Governance Registry an integrated SOA registry-repository, supporting efficient management of an organization's growing SOA implementation, with Service, WSDL, and Schema features, delivered as a multi-tenant, elastically scaling, metered platform. Meta data such as the xslt files of the purchasing service are stored in the WSO2 Governance as a Service, and the resources are fetched during the purchase.

WSO2 Business Processes as a Service
Fig 6. Portal Web App
The WSO2 Business Process Server, powered by Apache ODE providing a complete graphical console to deploy, manage and view processes and process instances, with the features for WS-BPEL 2.0 & BPELWS 1.1, Instance Data Cleanup, and Process Monitoring, delivered as a multi-tenant, elastically scaling, metered platform. In the shopping cart sample that we have been discussing, a ReOrderProcess in Business Processes as a Service checks the stock periodically and reorders if needed.

WSO2 Mashups as a Service
In the sample that is considered in this post, services such as the javascript service fetching related products from ebay and Amazon are deployed into WSO2 Mashups as a Service, which is the WSO2 Mashup Server, supporting the composition of Web Services, feeds, scraped Web pages, files and other information sources into new Web Services, web pages, or user notificatons,  features for scheduled tasks, delivered as a multi-tenant, elastically scaling, metered platform.

This sample is just a teaser of StratosLive, the comprehensive platform as a service, demonstrating the platform aspect of Stratos. You can explore StratosLive more on your own as platform as a service for the needs of your enterprise.
Published at DZone with permission of Kathiravelu Pradeeban, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)