RSS

Category Archives: SOA Suite

Patching your JDeveloper 12.1.3 with SOA/BPM Bundle Patch 12.1.3.0.2

The SOA(/BPM) Bundle Patch 12.1.3.0.2 is available for download from Oracle Support (http://support.oracle.com)
Just use the search on patch number ‘20423408’ and it will bring you the patch details page with the download (approx. 662MB).
You can deploy the patch on top of your basic 12.1.3.0.0 or the earlier released SOA Bundle Patch 12.1.3.0.1

So I patched my own JDeveloper 12.1.3 environment with the OPATCH tool.
Extract the downloaded patch, I’ll use C:\temp\p20423408_121300_Generic\20423408
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\p20423408_121300_Generic\20423408
And run opatch:
opatch apply

/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 (x86)\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\20423408_May_
29_2015_14_43_43\apply2015-05-29_14-43-25PM_1.log

OPatch detects the Middleware Home as "C:\Oracle\Middleware\12.1.3"

mei 29, 2015 2:43:44 PM oracle.sysman.oii.oiii.OiiiInstallAreaControl initAreaControl
INFO: Install area Control created with access level 0
Applying interim patch '20423408' to OH 'C:\ORACLE\middleware\12.1.3'
Verifying environment and performing prerequisite checks...
Patch 20423408: Optional component(s) missing : [ oracle.integration.bpm, 12.1.3.0.0 ] , [ oracle.mft.apache, 12.1.3.0.0 ] , [ oracle.bpm.processspaces, 12.1.3.0.0 ] , [ oracle.mft, 12.1.3.0.0 ] , [oracle.soa.workflow.wc, 12.1.3.0.0 ]

Patch [ 20423408 ] conflict with patch(es) [ 19707784 ] in the Oracle Home.

To resolve patch conflicts please contact Oracle Support Services.
If you continue, patch(es) [ 19707784 ] will be rolled back and the new Patch [ 20423408 ] will be installed.

Do you want to proceed? [y|n]
User Responded with: Y

OPatch will roll back the subset patches and apply the given patch.
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]
User Responded with: Y

Backing up files...
Rolling back interim patch '19707784' from OH 'C:\ORACLE\middleware\12.1.3'
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...
RollbackSession removing interim patch '19707784' from inventory

OPatch back to application of the patch '20423408' after auto-rollback.
Patching component oracle.rcu.soainfra, 12.1.3.0.0...
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 20423408 successfully applied
Log file location: C:\ORACLE\middleware\12.1.3\cfgtoollogs\opatch\20423408_May_29_2015_14_43_43\apply2015-05-29_14-43-25PM_1.log
OPatch succeeded.

 
8 Comments

Posted by on 09-06-2015 in Oracle, OSB, SOA Suite

 

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!!!

 
4 Comments

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

 

Tags: , ,

Installing Oracle SOA Suite 12.1.3 for developers

This blogpost quickly describes the usage of the Oracle SOA Suite 12.1.3 Quick Start Installer for developers.

After download and extracting the fmw_12.1.3.0.0_soaqs_Disk1_1of1.zip file from the Oracle website you will find 2 JAR files in the archive.

  • 18-06-2014 22:39   2.060.922.907   fmw_12.1.3.0.0_soa_quickstart.jar
  • 18-06-2014 22:38   1.125.261.418   fmw_12.1.3.0.0_soa_quickstart2.jar

Funny detail, both JAR files are dated 18-06 so it seems the package was ready a week before the big release on 26-06-2014

On Windows make sure you run the JAR with Administrator priviles, if you don’t you will get the following error message:


java -jar fmw_12.1.3.0.0_soa_quickstart.jar
Launcher log file is C:\Users\Jan\AppData\Local\Temp\OraInstall2014-06-27_09-19-50AM\launcher2014-06-27_09-19-50AM.log.
Extracting files..........................................
Unable to access or modify the system registry. Select Run as Administrator when opening the Command Prompt and try again.

Press any key to exit . .

Also make sure you execute the JAR installer with a of JDK 1.7.0.15 or higher. If not, you will get this message:


java -jar fmw_12.1.3.0.0_soa_quickstart.jar
Launcher log file is C:\Users\Jan\AppData\Local\Temp\OraInstall2014-06-27_09-26-24AM\launcher2014-06-27_09-26-24AM.log.
Extracting files.......................................
This installer must be executed using a Java Development Kit (JDK) but C:\Java\jre7u60 is not a valid JDK.

Press any key to exit . . .

Running the installer in a Administrator console with a recent JDK


c:\Java\jdk1.7.0_60\bin\java.exe -jar fmw_12.1.3.0.0_soa_quickstart.jar

After extraction of the files you will get graphic installer:

01

 

02

 

03

 

04

 

05_2

 

06

Click on Finish and if you don’t disable the Start JDeveloper checklist the IDE will start

07

 

The Select Role pop-up is still there, and like 11.x the majority of us will just select Studio Developer (All Features) and disable the Always prompt for role selection on startup.

 

08

 

Also still there, JDeveloper will ask you if you want to import previous preferences from other installations. Personally I never select Yes, but I’m a control freak so determine yourself ;-)

 

09

 

And there it is, the JDeveloper 12.1.3 IDE all to your disposal!

 

10


If you like you can install JDeveloper in silent mode, to do this you need an response file. This file can be generated in the 4th step of the installation wizard, but here is an example:


[ENGINE]

#DO NOT CHANGE THIS.
Response File Version=1.0.0.0.0

[GENERIC]

#The oracle home location. This can be an existing Oracle Home or a new Oracle Home
ORACLE_HOME=C:\Oracle\Middleware\12.1.3

Save the response file and execute the installer with this command:


java -jar distribution_name.jar -silent -responseFile file

 

 References:

 
11 Comments

Posted by on 27-06-2014 in Oracle, OSB, SOA Suite

 

Tags: , , ,

How to configure Oracle SOA/BPM task auto release

When 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

01

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.

 


02

Another feature is to use the expiration data (most right column) of tasks. This feature only works when you map the expiration Duration element in your BPEL or BPM tasks. In the example below the duration is set to P2D (2 days) which means with a priority 3 task the task is released after 1 day (50%).

03

 

References:

 
2 Comments

Posted by on 07-04-2014 in BPM, Oracle, SOA Suite

 

Tags: , ,

Using global token variables for SOA and BPM SCA composites

Our Oracle BPM project is going live and so many user stories lately are targeted to the operational support team to help them ease the deployment and maintenance through the environments.

Since we are already using the Credential Store Framework (blog here) to centralize the authentication/authorization part of our Oracle BPM (and SOA) SCA composites our application configuration plans became smaller and much easier to maintain.

The only deltas in our configuration plans through dev, tst, acc and prd are the endpoint hostname & ports in the different environment. Configuration plans are composite-specific so we need to maintain them for each SCA composite application and often have to change the same value in multiple plan files. For example: the Oracle WebCenter Content endpoint is used by many of our BPM processes.

So together with our Oracle Fusion Middleware administrator “Two Tone” Tony van Esch we dove into the fact that Oracle Fusion Middleware 11.1.1.7 (PS6) supports the ability to use Token Configuration. Also check Tony’s blogpost of our adventure. Tokens helps us, identical to the CSF, to define a global configuration which can be used by multiple SCA composites we deploy on the SOA-INFRA.

In your Enterprise Manager right-click on soa-infra -> SOA Administration -> Token Configuration

Token Configuration

Token Configuration

Here you will see 2 options, the second (most straightforward version) is to manually add, delete, modify changes and commit them straight into the Metadata Manager (MDM). The top option (Bulk Append Tokens) allow you to load large numbers of tokens from a mdm-url-resolver.xml file into the MDM.

Below is an example of an mdm-url-resolver.xml file which bulk loads multiple tokens:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
 <comment>URL Resolver file used by the Metadata manager</comment>
 <entry key="ucmProtocol">http</entry>
 <entry key="ucmHostname">ucm.rubix.local</entry>
 <entry key="ucmPort">7301</entry>
</properties>

To use these new token values from your MDM you simple configure your composites.xml to look something like this:

</pre>
<binding.ws port="..." location="${ucmProtocol}://${ucmHostname}:${ucmPort}/..." soapVersion="1.1">
</binding.ws>
<pre>

For us this simplified our release process (we actually don’t need any configuratuion plans anymore). This makes deployment through OTAP much easier and less likely to fail through any human mistake. Besided that when using automated deploy tooling it saves you on scripting numberous replace actions.

Some mental notes: !!

  • Tokens are only supported for the host, port & protocol at the ws.binding location and properties under the reference tag in your composites.xml. Don’t try using them in the import section
  • You will need to restart your SOA-INFRA after adding or modifying the tokens before they can be used (small disappointment here)
  • You cant create token names with special characters, host-name for instance won’t work. Also dots seem to be a problem, so just keep it simple and use camelcase.
  • Tokens don’t seem to work in MDS reference WSDLs
  • By default there is 1 default out-of-the-box variable named ${serverURL} which can be used in your composites.xml to point to the SOA server itself. It has to be configured on a different location in Enterprise Manager soa-infra under SOA Administration -> Common properties. Again a restart is necessary. I don’t really get the point myself of separating these settings in your SOA configuration. My advice would be that you define the soa binding tokens together with all other tokens and don’t use this.

serverUrl

References:

 
3 Comments

Posted by on 20-11-2013 in BPM, EM, Oracle, SOA Suite

 

Tags: , , ,

Using the Oracle Credential Store Framework (CSF) in your Oracle BPM / ADF project

In our Oracle BPM/SOA project we initially started with 1 process which had a service call out to Oracle UCM/WCC. Since WCC uses basic authentication by default we enabled an OWSM policy on the external reference and made sure the username and password were set in the composite.xml. With the help of Oracle config plans we were able to transfer the SCA through the different OTAP environments.


<interface.wsdl interface="http://www.stellent.com/CheckIn/#wsdl.interface(CheckInSoap)"/>
<binding.ws port="http://www.stellent.com/CheckIn/#wsdl.endpoint(CheckIn/CheckInSoap)" location="oramds:/apps/rubix/references/UCM.wsdl" soapVersion="1.1">
<wsp:PolicyReference URI="oracle/wss_http_token_client_policy" orawsp:category="security" orawsp:status="enabled"/>
<property name="oracle.webservices.auth.password" type="xs:string" many="false" override="may">welcome2</property>
<property name="oracle.webservices.auth.username" type="xs:string" many="false" override="may">ucmuser</property>

However when there became more and more processes, with increased complexity and all with numberous callouts to backends with authentication enabled, the delivey of our release through the OTAP environment became more complex as well.Besides that, our Oracle ADF task screens needed connection to many of the same endpoints as well so we ended up with username and password properties in that deployment as well.

So to centralize the username and password in our environment we decided to use the full potential of the Oracle Credential Store Framework (CSF) for both BPM and ADF. Oracle CSF is part of the Oracle Platform Security Services (OPSS).

Since Oracle BPM relies heavily on the SOA-INFRA structure used by Oracle SOA Suite the functionality works identical. Lucky for us Edwin Biemond already blogged about this feature regarding Oracle SOA Suite which we could simple re-use for Oracle BPM.

Oracle Credential Store Framework

Next step was Oracle ADF where our task has functionality to call web services which have the same basic authentication. Again we have a quick start by using this blogpost from Wilfred van der Deijl. In this blogpost he explains how to use a key to the credential store and how to retrieve it from your ADF application.

ADF and Oracle Credential Store

With the help of these 2 fellow Dutch Oracle techies blogs this turned out to be the smoothest user story in our last sprint ;-)

References:

 
2 Comments

Posted by on 19-11-2013 in ADF, BPM, Oracle, SOA Suite

 

Tags: , , , , , ,

Using basic authentication for Oracle BPM service call

In our Oracle BPM 11.1.1.6 process we need some calls to Oracle UCM/WCC. Since UCM requires basic authentication we need to make sure the BPM process sends a token.

So in our composite we right-click the UCM webservice reference, select configure WS policies,

Composite

We select the oracle/wss_http_token_client_policy from the security list.

ConfigurePolicies

Now there are multiple ways options to configure the username + password:

  • In JDeveloper we can configure the default value (handy for quick DEV deployments)

We need to configure a binding property, however the thing is that the oracle.webservices.auth properties are not there in the LOV.

ConfigurePolicies_LOV

However if we go to the composite source we can just manually add both
oracle.webservices.auth.username
oracle.webservices.auth.password


  <reference name="sourceUCM" ui:wsdlLocation="CheckIn.wsdl">
    <interface.wsdl interface="http://www.stellent.com/CheckIn/#wsdl.interface(CheckInSoap)"/>
    <binding.ws port="http://www.stellent.com/CheckIn/#wsdl.endpoint(CheckIn/CheckInSoap)"
                location="CheckIn.wsdl" soapVersion="1.1">
      <wsp:PolicyReference URI="oracle/wss_http_token_client_policy"
                           orawsp:category="security" orawsp:status="enabled"/>
      <property name="oracle.webservices.auth.username" type="xs:string" many="false" override="may">weblogic</property>
      <property name="oracle.webservices.auth.password" type="xs:string" many="false" override="may">welcome1</property>
    </binding.ws>
  </reference>

When deploying the project the settings are automatically set.

  • Through Enterprise Manager (can be used to override the default)

If we navigate to our SOA Composite -> Dashboard tab ->  Services and References you can find a list of all webservice references.Click on it and go to the properties tab

Check the HTTP Basic Authentication segment and use this to override any DEV default settings (if necessary)

EM_Properties

 
Leave a comment

Posted by on 18-01-2013 in BPM, Oracle, SOA Suite, UCM, WCC

 

Tags: , , , , , ,