From July 2019

Oracle SaaS Stories: Creating a Custom App Extension with Visual Builder | Part One: Connect Visual Builder to Fusion SaaS API Service Catalog


Visual Builder Cloud Service (aka VBCS), one of the 3 legs of Oracle Integration Cloud (aka OIC), is a low code development environment that is one of the main mechanisms for extending Oracle Fusion SaaS Apps.

In this episode we are connecting VBCS to a SaaS instance, so we can get the different endpoints provided and then use it in the application.

What you need is:

  • a user with access to OIC instance
  • same user with access to SaaS instance

Step 1: Create a new VBCS app

OIC -> Visual Builder
Click [New] on the top right
Select SaaS Template
Provide values and click [Finish]

Step 2: Configure

Go to hamburger menu on top right and select [Settings]
Click on [Services] tab and provide the info

The url to provide has the following format: https://instancefqdm/helpPortalApi/otherResources/latest/interfaceCatalogs

where instancefqdm is your SaaS instance such as https://<id>-<env&gt;.fa.<datacenter>.oraclecloud.com

Click on [Test] button

Step 3: Import the catalog

Click on [Service Connections] icon on the left
Click on [+ Service Connection]
Click on [Select from Catalog]
Click on [FA Services]
Click on one depending on the functional area you want to work with
Wait for the endpoints to appear, expand and select endpoints desired
When you are done click on [Create] on right down corner
Click on [Endpoints] tab and find your endpoints in there

Step 4: Use an endpoint for listing Contacts in a table

Click on [Web Applications] icon on the left, expand flows, expand main, select main-start, locate Table in the Components panel and drag and drop onto the view or onto the Page Structure panel. Click on [Add Data] on the right
Select Contacts and click [Next]
Select or drag&drop fields in the Columns panel. Select the Primary Key and click [Next]
Leave things as it is for now and click [Finish]
Click the “play” button up right
And here it is, you have your contacts page created

And that’s all folks for now, hope it helps! 🙂

Deploying a Coherence Cluster in Kubernetes


Coherence-Operator is a Kubernetes opeartor for deploying Oracle Coherence in k8s. Let’s see how to do it.

1 Clean previous setup intents:

helm del --purge sample-coherence
helm del --purge sample-coherence-operator
kubectl delete namespace sample-coherence-ns

2 Execute the following:

kubectl config set-context $(kubectl config current-context) --namespace=sample-coherence-ns

helm repo add coherence https://oracle.github.io/coherence-operator/charts

helm repo update

helm --debug install coherence/coherence-operator --name sample-coherence-operator --set "targetNamespaces={}" --set imagePullSecrets=sample-coherence-secret

helm ls

helm status sample-coherence-operator

3 Create a secret with your credentials to Oracle Container Registry:

kubectl create secret docker-registry oracle-container-registry-secret --docker-server=container-registry.oracle.com --docker-username='youruser' --docker-password='yourpasswd' --docker-email='youremail'

4 Install:

helm --debug install coherence/coherence --name sample-coherence --set imagePullSecrets=oracle-container-registry-secret

5 Proxy to a pod:

export POD_NAME=$(kubectl get pods --namespace sample-coherence-ns -l "app=coherence,release=sample-coherence,component=coherencePod" -o jsonpath="{.items[0].metadata.name}")

kubectl --namespace sample-coherence-ns port-forward $POD_NAME 20000:20000

6 Download and install Coherence Stand Alone

7 Download this and this

8 Build the client:

export COHERENCE_HOME=~/Oracle/Middleware/Oracle_Home/coherence
javac -cp .:${COHERENCE_HOME}/lib/coherence.jar HelloCoherence.javaexport COHERENCE_HOME=~/Oracle/Middleware/Oracle_Home/coherence

9 Test it:

java -cp .:${COHERENCE_HOME}/lib/coherence.jar -Dcoherence.cacheconfig=$PWD/example-client-config.xml HelloCoherence

2019-07-11 01:21:33.575/0.538 Oracle Coh...

…

Oracle Coherence Version 12.2.1.3.0 Build 68243

2019-07-11 01:21:34.430/1.392 Oracle 

The value of the key is 7

That’s all, hope it helps 🙂

Oracle SaaS Stories: Invoking a Service when an Entity is Created/Updated


In this episode we are explaining one of the many mechanisms for executing actions when changes happen in the Cloud App Environment.

In this particular case, as an example, we are calling an external REST service hosted in a kubernetes cluster, that implements a counter. Every time we create or modify a Contact, the external service is called.

Hands on!

Enter in the environment with a user with al least ORA_ASM_APPLICATION_IMPLEMENTATION_CONSULTANT_JOB

Go to “Manage Sandboxes”:

Create a new sandbox and set active:

Go to Application Composer:

Click on “Common Setup-Web Services”:

Create a new Web Service:

Select REST/SOAP appropriately:

Put the information of your service endpoint:

Search for the “Contact” business object, click on “Server Scripts”, then “triggers”, then click on “create”:

Crate a trigger of type “After Create”:

Go to the Web Services tab on the right pane, locate the service you want to invoke and click on “insert”:

The code invoked when a new contact is created is put in the editor. Save it.

NOTE: You can create another trigger for other events, such as “AfterTransactionPosted”, etc.

Let’s test it!

Check the status of the external web service:

Go to the Contacts Menu:

Create a new contact, for example Abelardo Pirindiki:

Check the status of the external service and see it has been called:

And that’s all folks, hope it helps! 🙂