Wednesday, July 9, 2014

JDeveloper 12c 12.1.3 - Adding Mobile Application Framework (MAF) to SOA/BPM Quick Install

To add the Mobile Framework extension, you will have to install the the following:

1. Mobile Application Framework JDeveloper Patch
2. Mobile Application Framework Extension

Follow the following steps:

1. Download the MAF JDeveloper patch through JDeveloper's Check for Updates
2. Don't restart JDeveloper, rather just close it after the download has completed.
3. Find the folder 12.1.3.0.0 under the users home directory. Under Windows it is under /users/user/AppData/Roaming/jdeveloper, under Unix it is under user home directory/.jdeveloper
4. Delete the 12.1.3.0.0 and the system12.1.3* directories.
5. Start JDeveloper and wait for the patch to be applied.
6. Download the MAF Extension
7. Stop JDeveloper
8. Delete the same directories as in step 4, as well as the tmp directory and any *.txt files in the jdeveloper folder
9. Start JDeveloper
10. It might pop up with a warning that a serious error occured, just ignore and restart JDeveloper to get rid of the error.

To specify the JDeveloper 'system' directory, you can also set an environment variable JDEV_USER_HOME 

Wednesday, April 16, 2014

Hostless Agent in EM12c

If you encounter an agent without any associated 'host' with it, and you did a manual installation of your agent, using '12.1.0.3.0_AgentCore_xxx.zip' file, you probably missed the required plugins. These plugins can be found in the '12.1.0.3.0_PluginsOneoffs_xxx.zip' file. Copy this zip file into the same directory where you extracted the AgentCore zip file, before installing the agent. Both of these archives can be extracted from the command line tool emcli, for example :

emcli get_agentimage -destination=/home/oracle/agent_inst -platform="Microsoft Windows x64 (64-bit)" -version=12.1.0.3.0


Wednesday, December 18, 2013

Oracle BPM quick and dirty SQL Scripts

All these queries are based on the 'soainfra' schema, and requires the CubeCommand to be enabled:

1. Count of assigned (as in open) human tasks by assignees.

select distinct count(*),assignees from wftask wf where state like 'ASSIGNED' group by wf.ASSIGNEES;

2. Activity Performance across the BPM stack:

BPM_ACTIVITY_PERFORMANCE_V -

For example to extract the averages for all activities:

select activity_label "BPM Activity", avg(ACTIVITY_RUNNING_TIME_IN_MSEC) "ms running time" from bpm_activity_performance_v group by activity_label;

3. Process Performance End to End time

BPM_PROCESS_PERFORMANCE_V - Start to End time

4. Count of Active BPM Processes:

select count(*) "Running Processes" from bpm_process_instance_v where sequence_id not in (select sequence_id from bpm_process_performance_v);

Sunday, October 13, 2013

Oracle Case Management Tips

BPM-73420


Error in starting cases.
Error in starting cases.
Contact system administrator for assistance.

....
         at oracle.bpm.casemgmt.persistence.model.CaseStakeHolder.toString(CaseStakeHolder.java:224)
.........


Make sure that all the Stakeholders in the Case Configuration points to a valid  member configuration with a valid member type defined.

Rules going 'haywire'

Remember that any Case Activity can only contain one primitive parameter, or else you are going to break the wiring on the composite level.

Oracle Rules only accept a single primitive type, and multiple complex types (if required).

Thursday, July 18, 2013

Oracle BPM Flex Field Index Creation

Use the output from the following sql script, to create indexes for the WFTASK public and private flex fields. The script looks at the statistics of the WFTASK table to determine the required indexes. Replacing DEV_SOAINFRA, with the schema specified during the RCU creation step.

You can also modify the script to search for may be a bigger number of distinct rows, by changing the number '1' in the script.


set heading off
set echo off
EXEC DBMS_STATS.gather_table_stats('DEV_SOAINFRA','WFTASK');
select 'create index DEV_SOAINFRA.'||column_name||'_idx on DEV_SOAINFRA.'||table_name||' ('||column_name||');' from all_tab_columns where table_name = 'WFTASK'and num_distinct>1 and column_name like '%ATTRIBUTE%';

Output will be in the format:


create index DEV_SOAINFRA.PROTECTEDNUMBERATTRIBUTE1_bpmflex_idx on DEV_SOAINFRA.
WFTASK (PROTECTEDNUMBERATTRIBUTE1);

create index DEV_SOAINFRA.PROTECTEDTEXTATTRIBUTE13_bpmflex_idx on DEV_SOAINFRA.W
FTASK (PROTECTEDTEXTATTRIBUTE13);

Thursday, June 27, 2013

Oracle FMW on 12c Container Database with a Pluggable Database

Oracle FMW 11.1.1.7 (aka PS6) is certified to run on Oracle Database 12c Container with a pluggable database.

To run the rcu (or Repository Creation Utlity) you have to connect to the service of the container created to contain your FMW repository.

For example, I have created a database container called orcl, with a container called pdborcl. If you I run 'lsnrctl status', I get the service orcl.domain.com (root container) as well as pdborcl.domain.com. In my case I would connect to pdborcl.domain.com service.

The other thing to remember is that the 'well known' 'sys' user is a root container based user, and thus you have to grant dba rights to the sys user on the pdborcl container. This is achieved by connect to the service pdborcl as sys and run the command 'grant dba to sys'.


Wednesday, November 21, 2012

64-Bit & OID RCU Issues

If you try to create FMW repository running on 64-bit, and you run into the following error:

oid schema rcu fails ERROR rcu: oracle.sysman.assistants.rcu.backend.action.SQLPlusAction::perform: Error initializing SQLPlusEngine

Set the SQLPLUS_HOME to point to your existing 64-bit Oracle 'sqlplus' installation:

export SQLPLUS_HOME=$ORACLE_HOME

then run RCU.