After migrating the code from SOA 11g to 12C we found that setCompositeInstanceTitle was not working and we were not able to see the instance names in the enterprise manager console.
For setting the Composite Instance Name in a BPEL Process we used the Java BPEL exec extension.Below is the code which was working fine in 11g and not working in 12C but as per the documentation it is still supported for backward compatibility.
<extensionActivity>
<bpelx:exec name="setTitle" language="java">
<![CDATA[String instanceTitle = (String)getVariableData("title");
setTitle(instanceTitle);
setCompositeInstanceTitle(instanceTitle);]]>
</bpelx:exec>
</extensionActivity>
As a work around we have changed this to setFlowInstanceTitle which is working fine and we are able to see the instance names in the EM console. Below is the working code.
<extensionActivity>
<bpelx:exec name="setTitle" language="java">
<![CDATA[String instanceTitle = (String)getVariableData("title");
setFlowInstanceTitle(instanceTitle);]]>
</bpelx:exec>
</extensionActivity>
This can be more powerful in tracking a business flow that consist of a single SOA composite application or multiple SOA composite applications.