BPEL and BPM’s performance monitoring using DMS by Sylvain Grosjean

What is DMS ?
The Dynamic Monitoring Service (DMS) API allows you to add performance instrumentation to Weblogic Server and Fusion Middleware (BPM, BPEL, Rules, OSB, Human Tasks, B2B…). During runtime DMS collects performance information, called DMS metrics that developers, system administrators, and support analysts use to help analyse system performance or monitor system status.
These performance metrics captured by DMS are available via the Spy Servlet and via MBeans.

BPEL/BPM Threading Model’s Review :

Dispatcher system Threads : allocated to process system dispatcher messages.
Dispatcher invoke Threads :
(synchronous invoke) allocated to process synchonous requests, For each payload received, the thread will instantiate a new instance invocations.
Dispatcher Engine Threads :
(asynchronous activities : receive in mid-process, on Alarm, onMessage, wait) accolated to process asynchronous messages (durable process).

We can tune these values through OEM : Read the complete article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

Upgrading to Oracle SOA Suite 11g PS6 (11.1.1.7)? Do this. By Ahmed Aboulnaga & Harold Dost

Do you need to make any code changes after applying the Oracle SOA Suite 11g PS6 (11.1.1.7) patchset?
Yes, this upgrade requires a few code modifications. So search for the following terms in your code to see if you are affected:

  • setProperty
  • out.header.wsse_Security

Issue 1: setProperty function requires strings now

If you are using the setProperty function, you need to force the variable to be a string.
After the 11.1.1.7 patchset, this no longer works:
select=’mhdr:setProperty("out.property.replyToAddress",$ReplyToAddress)’
Instead, force the variable into a string, in this example $ReplyToAddress:
select=’mhdr:setProperty("out.property.replyToAddress",string($ReplyToAddress))’/>
Read the complete article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

Using Split-Joins in OSB Services for parallel processing of messages. By Rutger Van Iperen

For-Each settingsThe Split-Join can be a very useful tool in your OSB services yet seems to be underestimated. When I did some asking around it turned out not many developers use this, even though I can come up with plenty of uses for the Split-Join. The Split-Join’s strength is in numbers, meaning it is the most powerful when you need to process a lot of pieces of similar data. For this example I used a simplified version of a project I am working on. In this project mobile devices are set to send data about rainfall to a database. The data is collected at a regular interfal creating a record and sent to the database per session which contains a large set of records. Instead of processing these records one at time I can process them concurrently and save a lot of processing (and waiting) time.

I created the XML Schema files and WSDL’s for the two services using JDeveloper and not Eclipse/OEPE because its design interface for these files is a lot more userfriendly (although this is of course personal preference). Read the complete article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

OSB, Service Callouts and OQL – Part 1 by Vijay Kumar

Oracle Fusion Middleware customers use Oracle Service Bus (OSB) for virtualizing Service endpoints and implementing stateless service orchestrations. Behind the performance and speed of OSB, there are a couple of key design implementations that can affect application performance and behavior under heavy load. One of the heavily used feature in OSB is the Service Callout pipeline action for message enrichment and invoking multiple services as part of one single orchestration. Overuse of this feature, without understanding its internal implementation, can lead to serious problems.
This post will delve into OSB internals, the problem associated with usage of Service Callout under high loads, diagnosing it via thread dump and heap dump analysis using tools like ThreadLogic and OQL (Object Query Language) and resolving it. The first section in the series will mainly cover the threading model used internally by OSB for implementing Route Vs. Service Callouts.

OSB Pipeline actions for Service Invocations

A Proxy is the inbound portion of OSB that can handle the incoming request, transform/validate/enrich/manipulate the payload before invoking co-located or remote services. The execution logic is built using the proxy pipeline actions. For executing the remote (or even local) business service, OSB provides three forms of service invocations within a Proxy pipeline:

  • Route – invoke a single business service endpoint with (or without) a response. This happens entirely at end of a proxy service pipeline execution and bridges the request and response pipeline. The route can be treated as the logical destination to reach or final service invocation. There can be only one Route action (there can be choices of Route actions – but only one actual execution) in a given Proxy execution.
  • Publish – invoke a business service without waiting for result or response (like 1-way). The caller does not care much about the response. Just interested in sending out something (and ensuring it reaches the other side).
  • Service Callout – invoke one or more business service(s) as part of message augmentation or enrichment or validation but this is not the primary business service for a given Proxy, unlike the Route action. The service callouts can be equivalent to credit card validation, address verification while Route is equivalent to final order placement. There can be multiple Service Callouts inside a Proxy pipeline. Read the complete article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

OSB 11g – A Hands-on Tutorial by Sivakumar Gonugunta

I published a OSB11g tutorial considering the use case described in my earlier blog posts. The tutorial can be accessed from here as I am not sure on how to place it in OTN. I would like to know your valuable comments on this. The WSDLs and other material used in this tutorial can be downloaded from here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

SOA Suite 12c and BPM Suite 12c sales kits

At our SOA Community Workspace (SOA Community membership required) you can find the latest sales plays to update your sales team. Kits include a overview presentation to train your sales teams, cheat sheets for your pocket and customer ppt presentations:

SOA Suite 12c FY15 sales resources:

FY15 SOA Sales Opportunities Webcast – PPT

BPM 12c FY15 sales resources:

 

Please use this documents in the spirit of our joint partnership. Please do NOT publish any SOA Suite 12c or BPM Suite 12c details before general availability.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

Controlling BPEL process flow at runtime by Maarten Smeets

When using Oracle BPEL it is often desirable to allow a certain amount of configuration of the process flow at runtime. To allow configuration, properties/preferences/parameters can be used. These can be implemented in various ways. Lucas Jellema has described a method in the Oracle SOA Suite 11g Handbook (http://www.amazon.com/Oracle-SOA-Suite-Handbook-Press/dp/0071608974 page 252) for system parameters which uses Business Rules. In this blog post, I compare three other methods; using Domain Value Maps, using BPEL preferences and using a database table. I look at performance, development, re-use potential, updating the preference at runtime and when to use which method.

Implementation
For comparing the different methods I used a simple synchronous HelloWorld BPEL process with audit logging turned off. The property to be fetched is the greeting (Hello). The process itself returns its input prepended by the greeting followed by a space. Thus for example input: Maarten, output: Hello Maarten.

Domain Value Map
Domain Value Maps (http://docs.oracle.com/cd/E14571_01/integration.1111/e10224/med_dvm.htm) are an underestimated feature from Oracle SOA Suite. An XML file called DVM (domain value map) allows storing domains and domain values. In JDeveloper wizards are available to create and fill the DVM file. XPath expressions can be used to easily query these domains and use them in for example BPEL, BPM or the OSB (http://guidoschmutz.wordpress.com/2009/12/25/implement-domain-value-maps-dvm-with-oracle-service-bus-osb-10r3/). The SOA Composer (http://docs.oracle.com/cd/E15523_01/integration.1111/e10224/med_dvm_ui.htm) provides a GUI for editing DVM’s at runtime. DVM’s can be shared among processes by putting them in the MDS.

Development
The below screenshot shows how JDeveloper makes it easy to create and use a DVM. In one screenshot how a DVM can be edited at design-time in the top/left part of the screenshot and XPath expressions can be used (bottom part) to let the BPEL process query the DVM at runtime. Read the complete article here.

 

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

Amis sharing middleware knowledge for 10 years thanks & congratulation ;-)

imageSpecial THANKS from the whole Oracle Fusion Middleware Partner Community to the AMIS team for sharing the excellent middleware content at their blog the last 10 years! All the best practice and tips, tricks and hints helped us to grow the middleware business together and make our joint customer successful. AMIS is one of your key middleware partners with Middleware Specializations in ADF, WebLogic, Application Grid, Suite Suite and BPM Suite. We acknowledged the AMIS contribution with the EMEA SOA Partner Community Award 2014. Looking forward to many more successful joint middleware projects! Jürgen Kress

Visit the AMIS technology blog here!

congratulationa AMIS Blog

Want to promote your SOA & BPM blog? Add your blog to our community wiki here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

Adaptive Case Management – SOA & BPM Bundle Patch 11.1.1.7.3 Now Available

This patch includes the Adaptive Case Management UI – patch #18072286 – Download (via Oracle support)

  • With this patch the ACM UI is now available without needing the controlled patch
  • If you have already applied the ACM patch (17767877),  this will be rolled back automatically when you apply the BP3 patch
  • This patch also makes available the REST API (URI  /bpm/services/rest/application.wadl)

Please let us know if you work on an ACM opportunity / project!

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

How to configure Oracle SOA/BPM task auto release by Rubix

01When a Oracle SOA or BPM workflow task is assigned to a role and/or group, a user may acquire the task to work on it. Once the task is acquired, other users are not able to work on that specific task. In the Oracle SOA-INFRA, used by both SOA Suite and BPM Suite, there is a feature called ‘task auto release’ which allows to configure the duration before tasks are automatically released and made available for all other users again.

In Enterprise Manager go to soa-infra -> SOA Administration -> Workflow Properties

Select the Task tab and expand Advanced. There you can see there are default values for automatically releasing tasks according to their priority. In the screenshot below the default value of P3D (3 Days) is changed to P1TM (1 minute) for testing purposes. This is done for the priority 3 task, which is the default priority. Read the complete article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki