Friday May 13, 2016

SOA Suite 12.2.1: Failure resiliency by Marcel van de Glind


clip_image002

Adjust the situation that from a business process various service endpoints are invoked, where one of them is shown unstable behavior. The unstable service is regularly for short and sometimes long time not available. This may result in a large number of instances end in the error hospital. At the time that the endpoint is not available, resources are used to process instances which will not end successfully. Failure resiliency solution helps to avoid this situation. The failure resiliency solution is to suspend upstream inbound adapters, or EDN subscriptions, or web services. In the case of web services, clients are given errors right away. In the case of EDN and Adapters, messages wait in directory/queue/topic etc. until the endpoint is resumed.

IWS can also help in this situation (see also my IWS blog). Use IWS to examine what happened at various points in the business process to analyze the behavior.

By default, failure resiliency is switched off. Zo to start using it, the first step is to enable failure resiliency. You can enable it globally (as shown below). Each downstream endpoint inherits this configuration, but you can override it for an endpoint. 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

Technorati Tags:

Thursday May 12, 2016

SOA Suite 12.2.1: A first look at end-to-end JSON and JavaScript support in SOA Composites by Maarten Smeets

clip_image002SOA Suite 12.2.1 introduces end-to-end JSON support in composites and support for JavaScript in composites. The REST-binding (which can be used by Service Bus, BPEL, BPM) can receive and send untyped JSON without the need to translate it to XML. In BPEL, JavaScript can be used as expression language in various activities and there is a JavaScript embedding activity available.

In this article I’ll show some examples on what you can do with this end-to-end JSON support and give some examples on how to use JavaScript in your BPEL process.

About the implementation

Oracle has used the Mozilla Rhino JavaScript engine which is embedded in Java SE 6 and 7. WebLogic Server 12.2.1 and thus also SOA Suite 12.2.1, runs on Java SE 8 (Java EE 7). Java SE 8 has a new JavaScript engine Nashorn embedded (see here). A possible reason of Oracle for choosing Rhino could be that Nashorn is not thread safe. See here. You can imagine you need thread safety in an environment like SOA Suite.

SOAIncomingRequests_maxThreads is a property indicating the number of threads available to handle incoming requests. It is by default set to the same value as the connection pool size of the SOADataSource. This might not be enough for REST/JSON services. You can find this setting by going to the MBean browser, Configuration MBeans, com.bea, SelfTuning, (domain), MaxThreadsConstraint.

Use untyped JSON

You can use untyped JSON in various BPEL activities such as assign and assert activities. Since the JSON is untyped, you can assign values to elements which do not exist yet and they will be created; there is no message definition. Payload validation will cause a NullPointerException. 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

Wednesday May 11, 2016

SOA Suite 12.2.1: Resiliency updates on the operations side of life by Robert van Molken

clip_image002

On the 25th of October at Open World 2015, Oracle released the 12.2.1 version of SOA Suite 12c. This release is full of resiliency updates on the operation side of life.

The operations of integration are critical and Oracle listened to the business requirement of customers while developing this release. Here are few of these operations.

  • Usually many hardware/software systems are managed by a small team.
  • With minimum need for admin intervention an integration needs to run silently, automatically and smoothly.
  • When things do go wrong, a console is needed that quickly allows identification and resolution of exceptions.
  • Without a lot of admin training it should be relatively simple to manage integrations.
  • An integration needs to scale, perform and provide continuous availability to process high workloads.
  • Ability to patch applications/composites for emergency fixes.

It isn’t the first time in the life cycle of SOA Suite 12c that Oracle is working on the operations of the product.

SOA Operations in 12.1.3

In the previous 12.1.3 release Oracle already targeted the IT operations. Read my blog about it for more details. But for a quick reference, here are the major updates.

  • Automated Operations
    • Auto Purge: Old data past the retention point are periodically on schedule to be automatically be purged.
  • Performance
    • Modularity Profile: Startup time and memoty is reduced by starting up components that are used (depends on the selected profile).
    • Lazy Loading: Startup time is reduced by loading composites only on first use.
  • Problem Identification & Resolution
    • Centered Error Hospital: The EM is reworked to be centered around exception conditions instead of business as usual, including a centralised Error Hospital.
    • Better Flow Trace: A flow trace with multiple composites shows both in a single trace for better troubleshooting.
  • Simplified Tuning
    • Work Managers: Simplify and improve thread tuning by switching to work managers. In 12.1.3 it is possible to assign a work manager per soa-infra partition.

SOA Operations in 12.2.1

Now in this 12.2.1 release Oracle has targeted the IT operations again, but with more focus on resiliency. First lets look at the major updates.

  • Resiliency
    • Circuit Breaker: Improved resiliency when downstream services go down by suspending inbound services.
  • Performance
    • In-Memory SOA: Optimize performance and scalability by reducing database growth.
    • Integration Workload Statistics: Diagnostic tool for analysing performance similar to DB AWR.
    • Parallel Deployment: Faster SOA and Service Bus startup time.
  • Availability
    • Composite Instance Patching: Patch (long running) instances immediately without redeploying new composite version and stalling instances.
    • Automatic Service Migration (ASM): Reduce the failover time and amount of machine resources needed for deployment.

Lets look at them in more details in same order as above.

Resiliency

Circuit Breaker

A problem we all have experienced is when services more downstream get unavailable cause instances to failt and fill up the error hospital. Manual recovery is sometimes difficult and time consuming. These failing instances consume unnecessary resources.

Because of these failing instances the operational costs to recover instances in the error hospital are greater. There is also a potential instability of the system due to the errors on business critical instances.

In the 12.2.1 release Oracle introduces Circuit Breaker. It automatically suspend upstream inbound services and the messages are added in queues on disk for later processing. The inbound services automatically resume when the downstream service endpoint is up. 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

Technorati Tags: SOA Community,Oracle SOA,Oracle BPM,OPN,Jürgen Kress,SOA Suite 12c,SOA Suite 12.2.1

Tuesday May 10, 2016

Quick overview of SOA Suite 12.2.1 new features by Maarten Smeets


clip_image002Oracle has just released SOA Suite 12.2.1 which contains several exciting new features. The below entries have shamelessly copied from the developers guide in order to provide a quick overview of highlights for this release of the SOA Suite. Also at the end of the article some links for new features of WebLogic Server 12.2.1 which has also been released.

Patching running instances

See Patching Running Instances of a SOA Composite

Oracle SOA Suite 12c (12.2.1) supports Composite Instance Patching, which enables you to patch running instances of a composite and recover faulted instances after patching the runtime. You can only include those fixes in the patch that are compatible with Composite Instance Patching. Use the SOA Patch Developer role in Oracle JDeveloper to make the fixes and create the patch.

Composite Instance Patching enables you to deliver urgent composite fixes that can be picked up by long running instances. You can make compatible/allowed changes without aborting in-flight instances. If a patched running instance comes across a business process that has been fixed by the patch, say a BPEL transformation, then it picks up the fixes applied to the business process.

When designing the patch, the SOA Patch Developer mode in JDeveloper automatically disables changes that cannot be made to the patch. Some of the compatible changes that you can make include:

  • Non-schema related XSLT changes, changes to fault policy, sensor data, and analytics data.
  • Compatible BPEL changes such as transformation activity, assign operations, etc.
  • JCA Adapter configuration properties.

In-Memory SOA

See Using In-Memory SOA to Improve System Performance

You can leverage the Coherence cache associated with WebLogic Server to run your non-transactional business processes in memory. This improves performance and scalability for these business processes, as read and write operations are performed out of the cache. Database performance and management also improves, as the costs associated with continuous disk reads and writes are significantly reduced.

In-memory SOA enables short-running processes to live in memory. The process state gets written to the database only when faulted, or at regular, deferred intervals using a write-behind thread. The BPEL state information is dehydrated and rehydrated to/from the Coherence cache.

Support for debugging XSLT maps

See Debugging the XSLT Map

Starting in 12.2.1, you can debug your XSLT maps using the SOA Debugger. You can add breakpoints at strategic locations in the XSLT map. When debugging, the debugger halts execution at the breakpoints, enabling you to verify the data and output.

XSLT maps can be complex, making them difficult to debug. For example, you may have a Java function, or other functionality, that is best tested in the application server. Also, you might find it easier to debug in the application environment, as the XSLT may be invoked from many different applications in the server. The SOA debugger provides remote debugging capability for XSLT maps that have been deployed in the application server.

You can also use the debugger with your Oracle Service Bus projects.

Support for End-to-End JSON and JavaScript

See Integrating REST Operations in SOA Composite Applications

Starting in 12.2.1, your SOA composites can use end-to-end JSON. This means that the REST service can receive the REST request and route it to the BPEL engine without translating it to XML. The BPEL component can use the JavaScript action, and also use JavaScript in conditional and iterative constructs, to work on JSON objects directly. The REST reference can receive the REST message from the BPEL engine and route it to an external REST endpoint without translation. 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

Technorati Tags: SOA Community,Oracle SOA,Oracle BPM,OPN,Jürgen Kress,SOA Suite 12c,SOA Suite 12.2.1

Wednesday May 04, 2016

Flex Fields : Lesson 6: Promoting Flex Fields Mappings and Labels Across Environments by Jaideep

clip_image002When you promote your application from one environment to another, from example from ‘Development’ to ‘Test’ or from ‘Test’ to ‘Production’, it can be a lot of work to have to recreate all the flex field mappings and labels manually in each target environment. To make this easier, Oracle provides a Data Migrator ant script to promote Flex Field mappings and labels from one environment to another. This video is an excerpt from one of our Oracle BPM Training courses. It walks you through how to use the Data Migrator ant script. Watch the video 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

Tuesday May 03, 2016

JDeveloper 12c becomes slow while editing BPM Process by Tiago Teixeira

There is a known issue with JDeveloper 12c while working on a BPM Process where JDeveloper becomes very slow while editing the process.
A simple drag and drop of an activity or a data association becomes a real pain and it seems as if JDeveloper is constantly working on the background.
To improve this I have two suggestions. The first one will not solve the issue but will help. The second will take away all your frustration!

    1. Remove the auto-build on save action
      1. Go to Tools → Preferences
      2. Search for save actions
      3. Remove the Build Project after Save from the list
    2. Apply patch # 18964763 to your JDeveloper 
      1. Download patch # 18964763 from My Oracle Support
      2. Follow the installation instructions to install the patch with OPatch

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

Monday May 02, 2016

Escalate task after expiration time in BPM by Waslley Souza


clip_image001In Oracle BPM 12c, when you have a priority activity that you need to be resolved at a specified time to fulfill your SLA (Service Level Agreement), you can escalate it. Let’s learn how to do it!

As a starting point, I will use the BPM application created here: Creating BPM Process with BPM Composer.

I created three users: peter, bruce and clark. Clark is the manager of Bruce, and Bruce is the manager of peter.

In the process, add a new swimlane and change the role to Process Reviewer.
Add an User Task between Initiator and End Events.

Double-click on User Task and click on Add button near Human Task field.
Name it as EmployeeApprovalHT. 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

Sunday May 01, 2016

Suppress Approval Controls from BPM Workspace 12c – Hidden Feature by Antonis Antoniou

clip_image002I recently came across a very interesting discussion on the Oracle BPM forum which stimulated my interest for investigation; how to suppress the human task custom outcomes from the action bar in the BPM Workspace application in 12c!
When you deploy a BPM process or a BPEL service that includes a human task component, the BPM Workspace will automatically include in its action bar the custom outcomes that you have defined on your human task.

In the image above it's assumed that a composite has been deployed that includes a human task component that defines a custom outcome "Submit".
There are cases though that you might want to suppress this default behavior and not have your custom actions appearing in the actions list but just have them displayed in the task details.
In 11g this was "officially" supported with a checkbox option ("Show approval controls in task details only") in the advanced human task properties. 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

Saturday Apr 30, 2016

Calling a Service in BPM Composer by Waslley Souza

clip_image001In the previous post, we created a simple BPM process using BPM Composer.
Now, let’s improve our process including a Service Call to save the employees added.
For this, we will need to do some changes.

Download the sample application: MyProject.zip

Go to Business Catalog.

Add a new Service and call it as CreateEmployeeService.
I’m using the service that I created here: Expose Application Module as SOAP Web Service.

Add a Service Task activity between the Initiator activity and the End event.
Call it as SaveEmployee.

Double-click on SaveEmployee activity.
In the Implementation section, set the type as Service Call and the Service as CreateEmployeeService.
Click on Apply Changes. 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

Friday Apr 29, 2016

BPM Suite 12c: Oracle Adaptive Case Management: Monitoring Case Events by Maarten Smeets

clip_image002Adaptive Case Management (ACM) is an interesting addition to Oracle BPM Suite which has been introduced in 11.1.1.7. Adaptive Case Management is suitable to model complex work-flows in which there is no set order of activities taking place. This allows more control to the end user on what to do when.
When a case is started, it is a running process in the SOA infrastructure. The main component is Oracle Business Rules which governs (among other things) the availability of activities and when certain process milestones are achieved. The case API allows you to query the case events and milestones (how you can expose the API as a service is described here and here by Roger Goossens).
Sometimes people want to obtain information about cases such as;

  • in how many cases has a certain activity been executed?
  • in which cases has a certain milestone been reached?

Cases can crash, be restarted, migrated, aborted, purged, etc. Sometimes you might not want to depend on the running case being there to provide the information you want. Also using the API every time you want certain information might put a serious strain on your system. Using sensors or BAM might help but they require an investment to implement and are still manual implementations with no guarantee you can obtain information in the future you did not think you would need in the present/past.

Publish Case Events
Luckily Oracle has provided the perfect solution for monitoring case events! You can publish case events to the Event Delivery Network (read here 31.17.2 How to Publish Case Events). This can easily be monitored by for example a BPEL process, which can store the information in a custom table. 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

About





Search

Archives
« May 2016
SunMonTueWedThuFriSat
7
31
    
       
Today