Migration from Oracle Workflow to Oracle BPM 12c - nloug.nl · PDF fileMigration from Oracle...

Post on 07-Feb-2018

321 views 4 download

Transcript of Migration from Oracle Workflow to Oracle BPM 12c - nloug.nl · PDF fileMigration from Oracle...

Migration from Oracle Workflow to Oracle BPM 12c

By Pedro GabrielOracle ADF 11g CertifiedOracle BPM 12c Certified

Agenda• Project Scope

• Work Plan

• Implementation

• Lessons Learned

• Summary

Project ScopeStarting Point

Oracle Workflow

11gFront End

BusinessDatabase

300Main Processes

900Processes

Reusable Process#1

Reusable Process#3

Reusable Process#2

Documentation Not Found!

Project ScopeStarting Point Target Challenges

Oracle Workflow

11gFront End

BusinessDatabase

Oracle BPM 12c

Submit Tasks

Initiate Processes

EnvironmentInstallation

OWF ProcessesAnalysis

Architecture Solution

Lessons Learned

Project Scope• So… What Should I do?

• What’s processes structure?

• Model all processes as is?

• Rethink a new solution?

Work PlanEnvironment Installation

Oracle Workflow Processes Analysis

Development Naming Conventions

Oracle BPM Solution Architecture

Solution Implementation

Environment InstallationStarting Point New Architecture

Internet

LBR: lbr.ui.web.application

Weblogic #1

HTTPHTTP

Application Firewall

Backend Firewall

BusinessDatabase #2

UI Web Application

Business Database #1

Weblogic #2

LBR: lbr.business.databaseLBR: lbr.owf.database

OWFDatabase #2

OWF Database #1

Environment InstallationStarting Point New Architecture

Internet

LBR: lbr.ui.web.application

Weblogic #1

HTTPHTTP

BusinessDatabase #2

UI Web Application

Business Database #1

Weblogic #2

LBR: lbr.business.databaseLBR: lbr.owf.database

OWFDatabase #2

OWF Database #1

LBR: lbr.bpm

BPM #1

HTTPHTTP

Application Firewall

Backend Firewall

BPMDatabase #2

BPM Database #1

BPM #2

LBR: lbr.bpm.database

Internet

LBR: lbr.ui.web.application

Weblogic #1

HTTPHTTP

Application Firewall

Backend Firewall

BusinessDatabase #2

UI Web Application

Business Database #1

Weblogic #2

LBR: lbr.business.databaseLBR: lbr.owf.database

OWFDatabase #2

OWF Database #1

Environment Installation

Environment Installation

Oracle Workflow Processes Analysis

Development Naming Conventions

Oracle BPM Solution Architecture

Solution Implementation

Oracle Workflow Process Analysis

Input / Output Parameters

Process Patterns

DatabaseWeb Service

Reusable Processes Calls

Business Data

900 Processes

Oracle Workflow Process Analysis

Workflow BPM

Business Area

Process Name Process Name

Input Parameters

Output Parameters

Type / Pattern

<PRC_OWF_NAME> <PRC_NAME> <NAME>.<TYPE> <NAME>.<TYPE> <GENERIC> / <SPECIFIC>

BPM

Business Data Database Calls Web Services Sub-Processes

<ATTRIBUTES> <SCHEMA>.<TABLE><SCHEMA>.<PROCEDURE><SCHEMA>.<FUNCTION>

<ENDPOINT_URL> <SUB_PRC_PATTERN_TYPE>

foreach (OWF Process){

}

Type / Pattern #1

Type / Pattern #2

Environment Installation

Oracle Workflow Processes Analysis

Development Naming Conventions

Oracle BPM Solution Architecture

Solution Implementation

Development Naming ConventionsFile System - Business Area

Application - Sub Business Area

Project - Process

Naming Convention

<AaaBbbCcc>

/…/…/…

Process

Application Name:

Project Name:

Process Name:

Business Catalog Module:

Business Object:

Process Data Object:

Human Task:

UserTypes

<AaaBbbCcc>BO

<aaaBbbCcc>DO

<AaaBbbCcc>HT

…/

<AaaBbbCcc>

<AaaBbbCcc>

Development Naming Conventions• Attribute Types

• Fault Policies Configuration Files

• XSD Files• Input & Output Parameters• Business Data

• Reusable Processes WSDLs

MDS

<?xml version="1.0" encoding="UTF-8" ?><xsd:schema elementFormDefault="qualified"

xmlns:xsd="http://www.w3.org/2001/XMLSchema"targetNamespace="http://<COMPANY_NAME>.<COUNTRY_CODE>/.../xsd/process/<PROCESS_NAME>/<XSD_FILE_NAME>Data"xmlns="http://<COMPANY_NAME>.<COUNTRY_CODE>/.../xsd/process/<PROCESS_NAME>/<XSD_FILE_NAME>Data">

...

</xsd:schema>

Environment Installation

Oracle Workflow Processes Analysis

Development Naming Conventions

Oracle BPM Solution Architecture

Solution Implementation

Oracle BPM Solution ArchitectureHow should we develop BPM Processes???

One Application

One Project One Process

One Project

SeveralApplications

OR

Each process isdeployed isolated

All processes aredeployed together

Several Process

JDeveloperperformance issues

Easier to structure byBusiness Area

Oracle BPM Solution ArchitectureHow should we initiate BPM Processes???One Main Process for all Processes Middle Solution

Business Area X

One Main Process Per Business Area

Business Area X

Business Area Y

Harder to maintain inputparameters for all processes

More dynamic solution More flexible… but…

Environment Installation

Oracle Workflow Processes Analysis

Development Naming Conventions

Oracle BPM Solution Architecture

Solution Implementation

Solution Implementation

Several Projects One ProcessSeveralApplications

Each process isdeployed isolated

One Application for eachBusiness Area

One Project for eachOWF Main Process

One project for severalOWF Main Processes

How should we develop BPM Processes???

Solution Implementation

Business Area X

Processes with same modeling butwith different input parametersvalues

Business Area Y

Processes with different modeling

How should we initiate BPM Processes???

Solution Implementation

ojdeploy

antDeployment

Solution Implementation

Start Task BusinessDatabase

My Task List

Task A

Task B Submit

Submit

Submit TaskBusinessDatabase

New Task

End

Processes

Process A

Process B

Start

Start

Solution Implementation

• Multi device application

• Responsive user interfaces

• Faster development cycle

• Integrated with- Oracle BPM- Oracle SOA- Oracle Webcenter Content

Why Link BPM Framework??

Solution Implementation

• Real Time Indicators

• Quick Instant Actions

• Easy Data Access

Lessons Learned

Use Case

Exception occurred when binding was invoked. Exception occurred during invocation of JCA binding:

"JCA Binding execute of Reference operation ‘setDBData' failed due to: Interaction processing error. Error while processing the execution of the SCHEMA.DATABASE_OPERATION API. Cause: java.lang.NullPointerException

Check to ensure that the XML containing parameter data matches the parameter definitions in the XSD. This exception is considered retriable, likely due to a modelling mistake. The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution.

Lesson #1

Workarround

Use CaseLesson #1

Lesson #2Use Case

http://127.0.0.1:7101/integration/services/TaskService/TaskServicePort?WSDL

oracle.jdeveloper.webservices.model.WebServiceException:

[ERROR] only one globalBindings customizations is allowed in a whole compilation line 7 of wsdlhttp://127.0.0.1:7101/integration/services/TaskService/TaskServicePort?XSD=TaskCommand.xsd

[ERROR] only one globalBindings customizations is allowed in a whole compilation line 5 of wsdl

JDeveloper11.1.2.3

Lesson #2Solution

JDeveloper 11.1.2.3

JDeveloper 11.1.2.4

Was not a option for project

Lesson #3Use Case

parsing WSDL…

[ERROR] “wsdlhttp://127.0.0.1:7101/soa-infra/services/default/myProcess/myXSD.xsd” is not part if this compilation. Is this a mistake for “wsdlhttp://127.0.0.1:7101/soa-infra/services/default/myProcess.Service?WSDL#types?schema1”?

Line 2 of “wsdlfile:/c:/Users/M730B~1.ELB/AppData/Local/Temp/JDev.JaxBinding.5510295535565202477.xml”

JDeveloper11.1.2.3

Lesson #3Workarround

1. Copy WSDL to your File System

2. Run the wizard

3. Select WSDL from file system

4. Specify• Override Default Root Package• Override Default Types Root Package

JDeveloper 12.2.1 works fine

Summary

900

OWF Processes

90

BPM Processes

Summary

DocumentationLess Processes

Automatic Deployments Fully Integrated Solution

Processes

Process A

Process B

Start

Start

Pedro GabrielSenior Consultant

@PedrohnGabriel

pedro.gabriel@linkconsulting.compedrohgabriel@gmail.com

Thank You.