Oracle PaaS for SaaS Experiences
This summer we attended the Oracle PaaS to extend SaaS workshop from Oracle. This five days hands on workshop consisted of presentations, live demos, and hands-on laboratory exercises covering Java, Doc, Developer, and Messaging Cloud Service.
So what SaaS are we extending?
As of today Oracle has several SaaS solutions available . Ranging from HCM, Financials, CRM, to Project, Inventory, Cost and Order Management software. For this workshop we have used the Oracle Sales Cloud .
Oracle Sales Cloud is basically the Oracle Fusion CRM solution hosted in the cloud. It supports the entire sales process. From registering customer contacts, leads, opportunities, to the actual sale. Fusion CRM also easily integrates with the other Oracle Cloud applications, and has built in mobile capabilities.
The benefits of using Oracle Fusion CRM as a cloud solution:
- No need to invest in hardware
- No need for a team to support the Fusion Middleware stack, or to set up Identity Management etc.
- Software is updated by Oracle on regular intervals
- The environments are available anywhere/anytime
To proceed with the workshop…
What’s to Extend?
Customers need integration with 3rd party systems. They also might want different front-ends for their users, or combine their CRM solution with other systems. There are numerous examples why customers would like to extend their CRM (cloud) solution.
- Create your own Applications using Oracle Sales Cloud data (see Fig 4)
- Create your own Mobile Applications using Oracle Sales Cloud data (see Fig 5)
- Extend Oracle Sales Cloud UI to include additional functionality (see Fig 6)
Oracle Sales Cloud cannot be customized, as one could do with a similar solution running on premise. In the cloud you don’t get access to the database or PL/SQL, and you are not allowed to do customizations on the SOA/ADF components of the applications.
Every extension in the Oracle Sales Cloud needs to be performed using composers. For third party integration, webservices are available to interact with Oracle Sales Cloud. This is where PaaS can come into play.
Oracle Platform-as-a-Service is comprised of several platforms which can work together to form a complete cloud platform solution. A platform on which to deploy and offer applications to your end-users.
A selection of Oracle’s PaaS offerings :
- Java Cloud Services
- Database Cloud
- Document Services
- Developer Cloud
- Java Messaging Cloud
You don’t need the entire offering. Just by using Java Cloud Services it is possible to deploy an ADF application which uses data from the Oracle Sales Cloud (see Fig 4).
Java Cloud Services
The Oracle Java Cloud Service is in essence a Weblogic server hosted in the cloud. On this server J2EE applications can be deployed, and used.
Oracle offers some web frontends to monitor and maintain the cloud instance. For more advanced configuration there is limited access to a command line shell.
Most applications will use data. Traditionally data is fetched and stored in a database. But it is fairly simple to retrieve and update data using webservices instead.
Like for instance data from webservices offered by the Oracle Sales Cloud. Just using the SalesParty related webservices it is possible to build an application for listing all customers and their contact information. This could be helpful for other employees in the organization who do not directly have an account on the Oracle Sales Cloud.
Oracle Database Cloud is simply an Oracle database hosted in the cloud. When combined with Java Cloud Services, one can build, deploy and run J2EE applications without the need for any other infrastructure (or platform).
The Oracle Database Cloud can be maintained using web-based frontends. One of these is the Oracle Apex frontend which can be used to view, load, and create database objects.
It can serve as the storage foundation for all other kinds of Cloud services.
Oracle Developer Cloud
In a nutshell Oracle Developer Cloud provides a development environment for the enterprise by hosting:
- Source Control (GIT)
- Issue Tracking
- Continuous integration (Hudson)
- Collaboration (Wiki)
In the workshop we have used these tools to automatically build and deploy our application on our Java Cloud Service.
Oracle PaaS for SaaS
In the Oracle Workshop we have worked out the following solutions to extend our Fusion CRM (SaaS) using the Java Cloud Service and the Oracle Database Cloud (both PaaS):
ADF Application displaying SaaS data. This application used webservices to retrieve SaaS data. This application was hosted on the Java Cloud (fig 8).
ADF Application hosted on the Java Cloud showing data coming from the Oracle Database Cloud. This on its own does not yet extend SaaS. It is an extension when you use ‘Application Composer’ to add this ADF application on the UI of the Fusion CRM (fig 9).
ADF Mobile Application displaying SaaS data. The mobile application used REST services deployed on the Java Cloud Service. These REST services were basically adapters between the REST and SOAP protocol. Every REST request was transformed to SOAP and sent to the appropriate Fusion CRM webservice (fig 8).
We recommend everyone interested to sign up for the classed offered by Oracle to get some insight and hands-on experience. More information is available at: .
In following blogs we will highlight how these PaaS extension are to be performed in more detail.
- ADF Application using Fusion CRM Webservice. Generating WS proxy with proper security headers
- Extend Fusion CRM using Application Composer. Adding custom applications to Fusion
- Extend Fusion CRM using Application Composer. Using security token for WS authentication
- Java Cloud Services REST adapter
- Using Oracle Messaging Cloud