Integration Success Workshops: Cloud, Mobile and BPM

Integration Success Workshops are tools you can use when engaging with customers to generate pipeline or progress an existing opportunity – you can really use them at any stage of your customer engagement. They allow you to open doors and discuss the key areas of Cloud Integration, Mobility Integration and traditional Application Integration, all of which are hot topics in the market today.

Each workshop package consists of a presentation, a methodology to engage with the customer using best practices, a demo and maybe a video. All workshops take a solution rather than a product approach but still make good mention of the Oracle offering, allowing you to position among others SOA, ADF Mobile, Security, Webcenter and Weblogic.

Each workshop package also allows you to shape the customer engagement to suit your needs – you can have a mini discussion over a couple of hours or you can spend the whole day with your customer architecting their solution. At our SOA Community Workspace (SOA Community membership required) you can find the Integration Success Workshop kits for:

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

Wrong timezone causes TopLink warning in SOA Suite by Cato Aune

From time to time we discovered SOA installations that got this little TopLink warning in the SOA server log every minute:

It happened on some installations, but not on other, and we couldn’t really find any patterns that explained why it did happen on installation A and not on installation B.
After some investigation and with help from Oracle Support, we found that it was a combination of a JDBC bug and that sometimes strange things just happens.

  • In the table mediator_containerid_lease, there is a timestamp with timezone column.
  • For some strange reason, the JVM believed that the timezone was Atlantic/Jan_Mayen, and used the code for Atlantic/Jan_Mayen in the timestamp with timezone column.
  • A bug in the JDBC driver (or some inconsistency between driver versions and DB versions) made method extractTimeZone in TIMESTAMPHelper class get a NULL result instead of the correct timezone.

Solution: 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

SOA Suite 11g Basics – Configuring multiple email addresses for use in BPEL email activity by Carsten Wiesbaum

soa-infra Workflow PropertiesWhen working on Oracle SOA Suite 11g solutions one might have the requirement to send out emails on various occasions. Within Oracle Fusion Middleware this capability is provided by the User Messaging Service (UMS) infrastructure. Nevertheless, some additional configuration is required in order to send emails from within a SOA composite application. This is especially true if one has to send emails from several email addresses. This article will describe how to setup SOA infrastructure in order to send emails from within BPEL processes using the email activity. The following topics will be covered:

  • Enable email communication channel
  • Configure Default email account
  • Configure additional email account using Enterprise Manager MBean Browser

This article will not cover setting up the required email server, general UMS configuration and sending mails using BPEL email activity.

Enable email communication channel and configuring Default email account

Even if UMS is setup properly, some additional steps are required in order to send emails from within BPEL processes. First of all, the workflow engine email communication channel has to be enabled. The configuration is executed within Oracle Enterprise Manager 11g. To begin with one has to enter EM, expand the SOA folder and open soa-infra context menu. Within the context menu Workflow Properties can be accessed. 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

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