RSS

Author Archives: jvzoggel

About jvzoggel

Middleware Consultant / the Netherlands / 's-Hertogenbosch / RUBIX.nl

Fusion Middleware Partner Community Forum XX

Oracle Partner Community Forum

During the 1st week of March I had the pleasure of visiting the beautiful city of Budapest. Location of the 20th(!!) Oracle Fusion Middleware Partner Community Forum (#ofmForum). More than 180 delegates from more than 30 countries will visited the Boscolo Hotel Conference Center to share, learn and network with other Fusion Middleware minded. Oracle offered a great package for staying in the Boscolo hotel where the conference was, however in this era of “digital disruption” I decided to book a AirBNB appartment just 1 block from the hotel.

Boscolo hotel

Boscolo hotel

 

Day 1:

Oracle ACE briefing
Due to the amount of Oracle ACEs in Budapest, Jürgen Kress organized a sort of EMEA Oracle ACE briefing session. Where the ACE community had the opportunity to talk to both keynote speakers Andrew Sutherland and Amit Zavery. The topics where current and near-future Oracle Fusion Middleware products and PaaS Cloud Services.

Oracle Platform as a service (PaaS)

After Jurgens welcome speech it is time for Oracle Amit Zavery to start the community forum with a keynote. His session explains the Oracle Fusion Middleware strategy which (no surprise here) is cloud, cloud and some more cloud. Or as Amit stated himself: “Cloud is pervasive across everything we do at Oracle these days”. Cloud Platform for the digital business, was a phrase used multiple times.

Oracle Fusion Middleware Update
Andrew Sutherland (Senior Vice President of Technology and Systems) takes us on the trip explaining the digital disruption taking places in numerous markets at the moment. Think of websites/services like AirBNB, Spotify, Uber that are immediate threats to the current order counterparts. Board rooms should be scared of Digital Disruption. Digital Business needs both speed and agility. Modern business is all about real time and we should avoid processes which depends on batches.

SOA Suite 12c & cloud platform
The session explained important elements of service integration with both the current Oracle SOA Suite 12c and the future roadmap for Oracle towards the cloud. Including a sneak peek to the soon to be released Integration Cloud Service (ICS). The session also allowed for a great presentation (and live demo) about Stream Explorer 12c by Oracle ACE Director Lucas Jellema.

BPM Suite 12c & cloud platform
With the release of Oracle BPM 12c some new features were added to allow better (web based) modelling and on the other hand improve developer productivity. Not strange, since the same web interface will be used for the soon to be released Process Cloud Service. The session also allowed us to get a sneak peak of the new Process Cloud Service which is a fully self-service, PaaS service on the Oracle Public Cloud that allows for complete life cycle management of processes.

Social Event @ Spoon Budapest
The (official) part of day 1 ended with a dinner hosted by Oracle at the Spoon restaurant boat in the Donau river. While meeting old friends (and creating new ones) enjoying the fantastic diner with a marvelous view on the Buda Castle.

Spoon Restaurant @ Budapest

Spoon Restaurant

 

Day 2:

API Management (SOA track)
Robert van Molken & Yogesh Sontakke present the Oracle vision on API management.API management is about managing, discover, govern, monitor, and support your business APIs (services). The presenters first showed the highover positioning of products like Oracle API Catalog, Oracle API Gateway, Oracle API Manager & Oracle Service Bus. Later Robert went in depth for us showing details how to use the Oracle API Catalog with a live demo (very brave) and Yogesh did the same with the Oracle API Manager.

Oracle Business Actiivty Monitoring 12c (BPM track)
Mark Simpson explains that BAM is now adopted by the BPM team which shows the strategic focus from Oracle. Oracle BAM 12c is a completely redesigned product that provides real time insight into process. Oracle BAM 12c has some new features as geomaps, multi-browser support (no more IE yeah!), mobile enablement & better role based security options. The session showed different key features in BAM to support 4 important sections of information: Operation Analytics, Business Analytics, Operational Intelligence & Strategic Analytics. Mark also handed us some dashboard d

Oracle ACM Implementation Best Practices (BPM track)
Presented by both Danilo Schmiedel & Andrejus Baranovskis telling their experiences about implementation of ACM at 3 different (insurance) companies. Danilo first started with the characteristics of unstructured processes and the requirements that knowledge workers have on the IT solution. Also the importance of early-on case UI design is essential to achieve insight on business information requirements. Needed for dynamic case management is the definition of your activities, milestones, rules, events, data & case stakeholders. Danilo also mentions the ProM Tools for Process Mining research and extraction of knowledge about a (business) process from its process execution logs. Surely need to look at that. After the session there was a very valuable talk with Dirk Janssen, Harrie van Oosten &  Danilo Schmiedel to share experiences we with the Oracle BPM/ACM implementations in both Germany and the Netherlands.

Speaker & ACE Dinner
Finalized my stay in Budapest with a great diner in the hills of Buda.

 

 
Leave a comment

Posted by on 12-03-2015 in Common, Events

 

Tags: ,

How to use the Domain Value Map (DVM) in Oracle Service Bus 12c

Introduction

Due to the tighter integration of Oracle Service Bus 12c in the whole Oracle SOA Suite product it’s now much easier for developers to use general SOA Suite components like the Domain Value Map (DVM).

Getting Started

First I use the OSB 12c clone project ability to copy th earlier created/blogged OSB 12c Database adapter project and create a project named GetCaseServiceDVM. In the new project we add a Domain Value Map (DVM):

01

The file name and description speak for themself. The Initial DVM Entries forces us to define the minimum amount of 2 domain names (source and target of our value) and if we want we can inmediately configure the 1st record here.

02

The result is a DVM file in our project which we can easily edit within JDeveloper 12c.
For this blogpost we will add 2 records which will allow us to translate the value “1” and “2” which we receive from the database to a basic description of that value.

03

In our XSLT transformation we can drag the DVMFunctions:lookupValue on our canvas.
(You can easily find the function using the search function in components)

04

05

Finally we can configure the DVM input fields with the 5 arguments:

  1. The relative path (including the SBProject to your DVM file without mentioning the .DVM extension)
  2. Source table
  3. mapping of the input element we want to translate
  4. Target table to retrieve that specific output value
  5. Default value, in case no match was found in the DVM

06

In the source code of the XSLT this will look like this:

<tns:Type id="{/ns0:OutputParameters/ns0:GET_CASE_BY_CASENUMBER/ns0:CASETYPE}">
<xsl:value-of select='DVMFunctions:lookupValue ("GetCaseServiceDVM/CaseType", "Type", string (/ns0:OutputParameters/ns0:GET_CASE_BY_CASENUMBER/ns0:CASETYPE ), "Description", "Unknown" )'/>
</tns:Type>

If we test the result we see that the source element with value “2” is succesfully translated to the “Claim” value.

10

 
1 Comment

Posted by on 26-02-2015 in Oracle, OSB

 

Tags: ,

How to fix “Failed to invoke edit, SCAEndpoint not available” error after Oracle SOA Suite 12c upgrade

After importing an Oracle SOA 11.1.1.7 project, which includes JCA Database Adapters, the result is a bit awkward. We are still able to build the project, but trying to edit the DB adapter configuration fails with this error:

Failed to invoke edit for idm_groepen: SCAEndpoint not available

01_fout

After digging around in the composite and JCA file it seemed there is a difference in JCA file configuration between 11g and 12c. This is the JCA file for 11g:

02_probleem


<adapter-config name="idm_groepen" adapter="Database Adapter" wsdlLocation="idm_groepen.wsdl"
xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">

This is the JCA config for a 12c generated DB adapter on our composite:

03_fix

<adapter-config name="idm_groepen" adapter="db" wsdlLocation="idm_groepen.wsdl"
xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">

After manually editing all our imported JCA files the problem is fixed:

04_result

Hope it helps!!!

 
Leave a comment

Posted by on 05-02-2015 in Oracle, SOA Suite

 

Tags: , ,

Using the Database Adapter in Oracle Service Bus 12c

Introduction

Since the Oracle Service Bus is particularly good in handling high amounts of (small) requests very, very quickly it’s a perfect solution for entity/atomic services. In Oracle Fusion Middleware 11g the solution chosen to decouple a database was often using an Oracle SOA Suite 11g project with JCA and Mediator. However if you had specific requirements beyond basis mapping the Mediator component had it’s limits, and in the worst case you would need to extend the project with a BPEL process. From a developers perspective this is the “easy” solution since both the JCA component and Mediator are configured in JDeveloper 11g. And, the alternative, using JCA with OSB this would mean that you have to import the JCA configuration from JDeveloper 11g into your OEPE 11g. Which means more work. However my personal opinion is, that the SOA/Mediator choice is a “bloated” result for such a simple atomic service implementation. The OSB is much more suitable for atomic/entity services and SOA/BPEL should be used for orchestration purposes.

Lucky for us in Oracle Fusion Middleware 12c the development of simple atomic services to decouple a database in Oracle Service Bus 12c is less work due to tthe fact all features of OFMW are available to the developer in one IDE..

00

Getting Started

In this blogpost we will explain how to create an Oracle Service Bus 12c project that can act as a simple atomic service that can decouple your database.
Since a best practice is to NOT implement SQL code (INSERT, SELECT, UPDATE, etc) in your Middleware component we will use a simple PL/SQL package to communicate with the database.

First we will create a service bus project with the name getCaseService and drag the HTTP transport on the proxy service

01

02

02

03

Then drag the Database adapter on the external services and call it getCaseDB

10

11

12

13

The result will be a Oracle Service Bus project with both the newly created HTTP proxy service and the DB business service:

15_result

Then we can go and configure the pipeline. Here is a basic overview of the final result the pipeline will look like:

30_result_met_BS

In the pipleline we will need 2 transformations for the request and response pipelne. In this example we will show XSLT instead of XQuery, but both are usable. First we create an XSLT for the request  pipeline transformation:

20

21

22

23

24

Finally we will also need to make sure the project has the response XSLT we can use for the response pipeline:

25

26

27

28

After we finalized the project we can now deploy our atomic/entity service to the IntegratedWeblogicServer and test the new service

40_result

 
2 Comments

Posted by on 03-02-2015 in Oracle, OSB

 

Tags: , , ,

Patching your JDeveloper 12.1.3 with SOA Bundle Patch 12.1.3.0.1

The SOA(/BPM) Bundle Patch 12.1.3.0.1 is available for download from http://support.oracle.com
Just use the search on patch number ‘19707784’ and it will bring you the patch details page with the download (approx. 654MB).
The patch contains lots of runtime fixes, but also some JDeveloper 12.1.3 bugs (especially while modelling BPM 12c).

So I started patching my own JDeveloper 12.1.3 environment using the OPATCH tool.

Extract the patch, I’ll use C:\temp\p19707784_121300_Generic\19707784
This folder is called ‘patch_TOP’ in opatch terminology.

Since I use Windows as local OS you will need to First open a command prompt with Administrator rights (right-click, run as Administrator).
If we don’t use the right permissions we will get the error: Unable to lock Central Inventory. OPatch will attempt to re-lock

Naamloos

First we set our ORACLE_HOME to the Jdeveloper 12.1.3 folder:
SET ORACLE_HOME=C:\ORACLE\middleware_12.1.3
And make sure opatch is in our path:
SET PATH=%PATH%;C:\ORACLE\middleware_12.1.3\OPatch
We browse to the patch_top folder:
cd C:\temp\p19707784_121300_Generic\19707784
And run opatch:
opatch apply

Oracle Interim Patch Installer version 13.2.0.0.0
Copyright (c) 2014, Oracle Corporation. All rights reserved.
Oracle Home : C:\ORACLE\middleware_12.1.3
Central Inventory : C:\Program Files\Oracle\Inventory
from : n/a
OPatch version : 13.2.0.0.0
OUI version : 13.2.0.0.0
Log file location : C:\ORACLE\middleware_12.1.3\cfgtoollogs\opatch
OPatch detects the Middleware Home as &quot;C:\ORACLE\middleware_12.1.3&quot;

oracle.sysman.oii.oiii.OiiiInstallAreaControl initAreaControl
INFO: Install area Control created with access level 0
Applying interim patch '19707784' to OH 'C:\ORACLE\middleware_12.1.3'
Verifying environment and performing prerequisite checks...
Patch 19707784: Optional component(s) missing : [ oracle.integration.bpm, 12.1.3.0.0 ] , [ oracle.mft.apache, 12.1.3.0.0 ] , [ oracle.mft, 12.1.3.0.0 ] , [ oracle.bpm.processspaces, 12.1.3.0.0 ] , [ oracle.soa.workflow.wc, 12.1.3.0.0 ]
All checks passed.

Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = 'C:\ORACLE\middleware_12.1.3')

Is the local system ready for patching? [y|n] y
User Responded with: Y
Backing up files...

Patching component oracle.bpm.addon, 12.1.3.0.0...
Patching component oracle.rules, 12.1.3.0.0...
Patching component oracle.bpm.plugins, 12.1.3.0.0...
Patching component oracle.soa.mgmt, 12.1.3.0.0...
Patching component oracle.integration.bam, 12.1.3.0.0...
Patching component oracle.soa.common.adapters, 12.1.3.0.0...
Patching component oracle.soacommon.plugins, 12.1.3.0.0...
Patching component oracle.integration.soainfra, 12.1.3.0.0...

Verifying the update...
Patch 19707784 successfully applied
Log file location: C:\ORACLE\middleware_12.1.3\cfgtoollogs\opatch

OPatch succeeded.

 
Leave a comment

Posted by on 21-01-2015 in Uncategorized

 

Tags: , , , ,

Migrating Oracle Service Bus 11g to 12c (and the XQuery 1.0 upgrade)

You can easily import an Oracle Service Bus 11g project archive (JAR) in your JDeveloper 12c SB application (File -> Import)

import

XQuery upgrade:

Howver, when you import your Oracle Service Bus 11g project you will most likely import XQuery transformations as well. When you look at the XQuery editor in JDeveloper 12c you will probably notice that you only have “source” mode and not a graphical editor. Besides that the XQuery files show a “04” icon.

XQuery04

Since the early days of AquaLogic Service Bus the company formerly known as BEA (TCFKAB) supported the W3C working draft of “XQuery 1.0 and XPath 2.0 Functions and Operators” dated 23 July 2004.
In addition TCFKAB supported a number of extension functions easy to recognize with their fn-bea prefix. Since then the world moved on and XQuery made it to version 1.0 in 2007. So now in 12c there is a way to upgrade your XQuery 2004 files to version 1.0.

 

convert

 

The “04” icons dissapear in your project and the result will be that your XQuery files will be moved to:


XQuery_10

Besides that, since April 2014 the XQuery 3.0 recommendations are  also available. We will probably see those in future releases of SOA/OSB.

References:

 
4 Comments

Posted by on 03-12-2014 in Oracle, OSB

 

Tags: , ,

Using the For Each action in Oracle Service Bus 12c

In Oracle Service Bus 12c you can use the For-Each action to iterate multiple elements in your message.
While developing a service with For-Each functionality in Service Bus 12c I discovered that there are some subtle changes in the naming of the properties since 10g + 11g.
It took me half an hour to find out what I did wrong, documentation was not really helpful so hopefully this will spare you the trouble :)

In 11g the configuration looks like (screenshot from the OSB 11g Development Cookbook):

for-each-11g

In 12c the configuration would look more like this:

for-each-12c

 

 

 

 
2 Comments

Posted by on 02-12-2014 in OSB

 

Tags: , ,

 
Follow

Get every new post delivered to your Inbox.

Join 373 other followers