Thursday, April 12, 2012

SOA Suite (PS5) Released !!

The Oracle SOA Suite (PS5) is now generally available and the binaries can be downloaded from the OTN.

This release is promising and has provided better features in comparison to the previous PS4 release. Listed below are a few cool features which I found really helpful and see here for the complete list of new features available in this release.

  • New delivery/persistence policy for BPEL processes (aysnc.persist, async.cache & sync)
  • Similar to the 'Skip Condition's that we were used to in the BPM user assignments, skip conditions through XPath queries make way to skip activity executions in BPEL processes which can largely remove 'switch-case' design in most scenarios
  • Assertions are enabled in the request-response activities such as receive, invoke, reply etc.. where XPath conditions can be asserted to throw faults when they fail. These can be asserted before/after invocation namely pre-assert and post-assert
Human Task:
  • With regards to human-task, the much awaited feature of dynamic-assignment & task escalation can now be performed from the user task UI as provision is enabled for exposing this dialog in the user interface
Business Rules:
  • Business Rules now add capability to define rules in normal programming paradigm if-then-else, elseif, do-while, while etc.. which are greatly expected. This comes in as a great boon as earlier releases didn't offer users to define else conditions which had to be handled tactically using 'if' ONLY conditions which was a challenge in many complex scenarios
  • Usability and performance has greatly improved for editing business rules from within the composer
Business Activity Monitoring (BAM):
  • BAM is now supported on IBM Websphere
  • BAM reports based on external data objects can now be refreshed via Timer which removes the need for reload of entire report/view
  • During B2B-BAM integration scenarios we are often faced with error handling challenges at the EMS (Enterprise Messaging Service) layer which is now offered as part of this release
DB, File/FTP Adapters:
  • Optimizations for DB and File/FTP adapters such as coherence integration claims to improve the performance greatly especially during large payload interactions
Enterprise Manager (EM):
  • Alerts are displayed in the EM console for messages that are stuck in asynchronous transactions which can be recovered from within the console
  • Enhanced composite instance search provided for better search and usability for IT administrators


  1. Hi sathyam,
    I am newbie in SOA Suite 11g, I try to figure out what Is the purpose of creating two managed servers and one adminserver, I create an application and deployed in adminserver, Did I do wrong?

    I appreciate your comments.

    1. Hi Mariots, The concept of managed servers is not specific to SOA Suite. It is related to the WebLogic app server. First up, there is nothing wrong in deploying an app to admin server in a typical development environment where we have resource constraints like memory. However, in a production environment, we usually create multiple managed servers which take care of a specific set of functionality. For example, there can be a soa managed server (for soa apps) and bam managed server (for process monitoring only). Each managed server would run on a separate instance of JVM. Admin server is used just for server administration (where your weblogic console, em runs). Managed server advantages are manifold which you can read in detail on the web. However, most common advantages include high availability, failover (in a clustered environment) and reliability.

    2. Thanks Sathya for you reply,
      Another doubt, the structure (talking about architecture, jvm, files,etc.) for each managed server is the same? I mean If I deploy an application in a bam_server1 instead of deploying it in a soa_server1 its ok?, the only difference between them is the name only?, or bam_server1 has special files dedicated only for monitoring purposes.

      Best regards.

    3. Not exactly. If you are talking about deploying a Java/JEE application then it doesn't matter which managed server you deploy it to (as long as the relevant services/data sources are accessible). However, the SOA components use something called as dehydration store (MDS) which is mapped to appropriate managed servers. It doesn't matter in a single node/managed server install where admin server doubles up as everything. Also, the libraries are targeted towards appropriate managed servers (eg., bam libraries targeted on bam_server1 managed server). Hope it clarifies your query.

    4. Thanks Sathya,
      I am doing some practices with BPEL 2.0, I need to write an expression in Assign activiy to a result output, this expression is just a String, when I test the service the server doesn't return the desire expression, It's like if I were introducing a void value, can you help me and tell me how can I write an expression in the ouput so as to tested as web service this return the desire value?.

      Best regards.