Oracle SOA Suite 12c : Audit Levels (Off, Production, Development)

Inside the Enterprise Manager (URL: http://yourhost:7001/em) you can configure SOA Suite Audit Levels:

Choose "Common Properties"

Click on "Change Profile"
The oracle documentation shows the following:



  • Off:
    No business flow instance tracking and payload tracking information is collected. Drilling down into a flow shows the components and their status. Using this setting limits database growth, and also helps reduce latency and improve throughput.
  • Production:
    Flow and audit event information is collected and (more...)

Oracle SOA Suite: Profiles (SOA Foundation, BPEL only, Orchestration, Enterprise, BPM Classic, …)

Inside the Enterprise Manager (URL: http://yourhost:7001/em) you can configure SOA Suite profiles:

Choose "Common Properties"

Click on "Change Profile"
The oracle documentation shows the following:

The full set of adapters:
  • file,
  • FTP, 
  • database, 
  • JMS, 
  • MQSeries, 
  • AQ, 
  • E-Business Suite, 
  • User Messaging Service, 
  • socket, 
  • LDAP, 
  • Coherence, 
  • MSMQ,
  • JDE
The limited set of adapters:
  • file, 
  • FTP, 
  • database, 
  • JMS, 
  • MQSeries, 
  • AQ, 
  • E-Business Suite,
  • User Messaging Service

Oracle SOA Suite 12c: complete startup procedure including database and application server

After the first reboot i had to work hard to get the complete system up again. So here a list of all commands:


  1. database
    export ORACLE_HOME=/home/oracle/app/oracle/product/12.2.0/dbhome_1
    export PATH=$PATH:$ORACLE_HOME/bin
    export ORACLE_SID=orcl

    $ sqlplus / as sysdba

    SQL*Plus: Release 12.2.0.1.0 Production on Fri Feb 16 20:53:02 2018

    Copyright (c) 1982, 2016, Oracle.  All rights reserved.

    Connected to an idle instance.

    SQL> startup
    ORACLE instance started.

    Total System Global Area 1560281088 (more...)

Mediator throwing incomplete BusinessFaultException

A while ago I ran into the issue that business fault information was not returned to the calling system by the Mediator component in the SOA composite. Instead, only a message that a business fault occurred was responded to the calling system. The response would look something like the below example:

<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
	<env:Header/>
	<env:Body>
		<env:Fault>
			<env:Code>
				<env:Value>env:Receiver</env:Value>
			</env:Code>
			<env:Reason>
				<env:Text xml:lang="en-US">oracle.fabric.common.BusinessFaultException</env:Text>
			</env:Reason>
			<env:Role/>
			<env:Detail>
				<exception/>
			</env:Detail>
		</env:Fault>
	</env:Body>
</env:Envelope>

(more...)

Integration Cloud Service, SOA Cloud Service or Integration Cloud, are you confused?

Oracle have announced Oracle Integration Cloud, the next evolution in their cloud integration capabilities. So how does it relate to the existing Cloud based integration products and what is the future of different products? To best understand this, let’s first look at the existing landscape. Our first diagram shows a subset of the Oracle PaaS […]

The post Integration Cloud Service, SOA Cloud Service or Integration Cloud, are you confused? appeared first on Implementing Oracle (more...)

OGh Tech Experience 2017 – recap

On June 15th and 16th 2017 the very first OGh Tech Experience was held. This 2-day conference was a new combination of the DBA Days and Fusion Middleware Tech Experience that were held in previous years. To summarize: OGh hit bullseye. It was two days packed with excellent in-depth technical sessions, good customer experiences and great networking opportunities.

The venue was well chosen. De Rijtuigenloods in Amersfoort is a former maintenance building of the Dutch (more...)

Enterprise World Wide Cloud – Notes from the Oracle #PaaSForum 2017


This must be one of the last posts on #PaaSForum 2017 that anyone has written. Too late but I hope not too little, as it gives us an opportunity to reflect upon the material presented there. I heartily thank Jürgen Kress for organising this event on a grand scale, at a beautiful location (Split, Croatia this year), for his invitation, warm welcome and hospitality. Also thanks to his colleagues from Oracle for their help in (more...)

Oracle Weblogic: Tackling Class Loading Issues for SOA Infra

This blog article discusses how to address class loading issues with the Oracle SOA Infra. It's prime "raison d'etre" being a memory dump of something I don't do often, but may spend significant time in finding out how to do it again.

Some time ago I lost valuable time because some library being deployed twice, once in the wrong place ([SOA_HOME]/lib folder) and once in the right place ([SOA_HOME]/soa/modules/oracle.soa.ext_11.1.1). In this (more...)

Oracle BPM: Hiding Faults from BPM? Don’t use Service Activity!

In the following I explain how you can hide faults from BPM by not using (synchronous) Service activities, but (asynchronous) Send/Receive activities instead.

When calling services from a BPM process, you should think about where you want faults to show up and to be handled. This is specifically of interest when you have some integration layer between your BPM processes and external services that you call to abstract the external services from the BPM process. (more...)

Oracle SOA/BPM 12c: Contract WSDL Only in MDS?

In this posting I will discuss if it is a good idea to only have a (contract) WSDL in the MDS, and let your implementing composite point to that, instead of having a WSDL in the project itself (as well).

When developing SCA composites with JDeveloper, initially your WSDL will be in the project of the composite. Some people put a contract WSDL in the MDS, and then let the code of the SCA composite (more...)

Easy SOA releases with JGitFlow

If you use GIT as your source control system and if you use maven, the jgit-flow plugin is a massive time-saver, especially when we release a slightly large application with multiple modules (Each with it's own pom file). 

Two steps: 
 mvn external.atlassian.jgitflow:jgitflow-maven-plug in:release-start
and 
 mvn external.atlassian.jgitflow:jgitflow-maven-plug in:release-start

do the job. 

The above sequence basically updates the pom file versions to a release version (e.g. from 1. (more...)

Test Driven SOA – citrus for powerful SOA test coverage

Reading parts of Test-Driven Development for Embedded C" by James W. Grenning inspired me to take another look at this area and look for something new,  fresh and powerful.

I don't think we need much convincing on the importance of  automated test coverage (if someone does, please read the first chapter of the book mentioned above, especially the section on "Physics of TDD" that tries to quantify the high long-term costs of "Debug later programming" (more...)

Oracle BPM 11g/12c: How to Catch an Event in the Same Process

A customer of mine was kind of surprised that when you throw an event in a component of a SCA composite, that the same component cannot catch that event and act upon it. This is a known limitation, for which there is a work-around, which I will discuss in this article.

The work-around is quite simple: another loosely coupled component in the same composite can listen to the event, so all you have to do (more...)

Why in Oracle BPM/SOA Suite Attaching a Fault Policy to a Synchronous Service Is Not a Good Idea

In this posting I will explain why in the Oracle BPM/SOA Suite you should not attach fault policies to synchronous services.

The other day I investigated some BPM process instance that had an unrecoverable error. It was calling a synchronous service, that on its turn was calling another synchronous service, that on its turn was calling a external, synchronous service exposed through the Oracle Service Bus. That latter call failed (due to a timeout). As (more...)

Oracle SOA/BPM: Payload Validation per Composite

In this article I will explain how you can enable payload validation in the Oracle SOA/BPM Suite per composite, both design and deployment time. This works for 11g as well as 12c

When developing BPM processes or SOA services it is advisable enable payload validation on the development server. The reason being that this will force you to work with more representable test data, and in some occasions help you preventing coding errors (like (more...)

Oracle SOA/BPM 12c: Propagation of Flow Instance Title and Instance Abortion

Recently I wrote this posting regarding an improvement for setting the title of a flow instance in Oracle BPEL, and BPMN 12c. In this posting I will discuss two related improvements that comes with SOA/BPM Suite 12c, being that the flow instance abortion is automatically propagated from one instance to the other, as well as the flow instance title. Or more precisely, for every child instance the initiating instance is shown together with its name.

(more...)

Oracle APEX_WEB_SERVICE REST API call

In this post I will try to show you how I used the Oracle Apex and the APEX_WEB_SERVICE  PL/SQL package to quickly send a request to a public Internet API and how I handled the response. The code below was written during a 'Hackday' and hasn't been extensively tested.

My use case is integrating Oracle Apex with the public Mendeley REST API for Mendeley Catalog Search.

The idea was to build an (more...)

Making DevOps Business Driven – a service view

I've been doing a bit recently around DevOps and what I've been seeing is that companies that having been scaling DevOps tend to run into a problem: exactly what is a good boundary for a DevOps team? Now I've talked before about how Microservices are just SOA with a new logo, well there is an interesting piece about DevOps as well, its not actually a brand new thing.  Its an evolution and

Create with WLST a SOA Suite, Service Bus 12.1.3 Domain

When you want to create a 12.1.3 SOA Suite, Service Bus Domain, you have to use the WebLogic config.sh utility.  The 12.1.3 config utility is a big improvement when you compare this to WebLogic 11g. With this I can create some complex cluster configuration without any after configuration. But if you want to automate the domain creation and use it in your own (provisioning) tool/script then you

Oracle SOA Suite 12c tips – Tuning the SOA infrastructure thread pool

One of the new capabilities of Oracle SOA Suite 12c is the ability to control the SOA infrastructure thread pools, except the resource pools for EDN and the adapters, with Oracle WebLogic Server work managers. Each partition will has its own work managers defined. This allows you to separate services in partitions and, to some extent, tune them separately based on for example specific SLA requirements.

Well, this blog posting is not about explaining the (more...)