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.

Tuesday, October 16, 2012

Oracle BPM Suite 11g: Advanced BPM Topics - a must have

I am very honored to review the new book from Mark Nelson and Tanya Williams, Oracle BPM Suite 11g: Advanced BPM Topics, Packt Publishing, 2012. The book is due to be release the 25th October 2012.


The nature of BPM to be cross company, division and with multiple process stake holders brings a new set of dimensions to the definition, design and implementation of BPM. Mark and Tanya set out to address these hurdles, amongst others, in their book.

The book will give you a solid foundation to use Oracle BPM 11g Suite to its fullest capability, to short circuit your understanding of sub-processes, instance correlation, exception, error handling and inter-process communication. With the addition of working with arrays, you will be well equipped to achieve the most advanced BPMN techniques within your Oracle BPM 11g Suite environment within in a couple of days.

The authors explain the concepts and advanced techniques with detailed explanations, diagrams and hands-on exercises to confirm the techniques. The techniques are also enriched with best practice and “gotchas”.

I wish I had the valuable knowledge contained in the book earlier in my career, as it would have saved me a lot of time, reading through technical forums, product documentation and debugging BPMN models, trying to understand correlation and process communication. It also cleared a couple of misconceptions I had.

I would suggest the book to anybody embarking on an Oracle BPM implementation and anybody who wants to enrich their current understanding of BPM with the Advance Topics covered in Oracle BPM Suite 11g: Advanced BPMN Topics.

The book is available at Packt Publishing

Tuesday, August 14, 2012

JDeveloper network issues under JDK1.7

If you run into 'Permission denied' exceptions trying to connecting to Weblogic, and you are using JDeveloper and JDK1.7, add the flag 'AddVMOption -Djava.net.preferIPv4Stack=true' in jdev.conf.

The issue stems from the fact that JDK1.7 implements IPv6, and the prefered method by default for any connection is IPv6.

If you want to set it system wide, export the _JAVA_OPTIONS flag in .bashrc or .bash_profile:

_JAVA_OPTIONS=-Djava.net.preferIPv4Stack=true -Djava.net.preferIPv6Addresses=false

Thursday, June 7, 2012

Enterprise Manager Cloud Control 12c

If for some reason during the configuration step, the configuration keeps on failing on the 'MDS Schema Creation' step run the following command, without exiting the Configuration Assistant:

$ORACLE_HOME/sysman/admin/emdrep/bin/RepManager localhost 1521 orcl -action create -dbUser sys

With ORACLE_HOME set to your 'Oracle Middleware'/oms directory.

It will create the repository and when you try the 'Retry' button in the Configuration Assistant, it will pass the MDS Creation step.

If you still run into issues, under the Oracle Middleware home, there is a temporary directory '.gcinstall_temp' created, with a couple of useful log files under '/emprereq/LATEST/', which might give you a hint of what is wrong.

Tuesday, April 3, 2012

Interacting with Nodemanager

Nodemanager is a network daemon, which you can connect to and interact with. The basic functionality can be tested using a connection to Node Manager, using telnet, or in the case of SSL, ssh.

Commands which can be issued to Node Manager includes the starting, stopping and querying the state of servers.

Example:
telnet nodemanagerhost port

domain soa_domain    <- Set the current working domain, as specified in the nodemanager file
+OK Current domain set to 'soa_domain'
server AdminServer   <- Set the current working server AdminServer
+OK Current server is now 'AdminServer'
start AdminServer      <- Issue a start command to AdminServer
+OK Server 'AdminServer' started
getStates                        <- Get status of the servers
+OK AdminServer=RUNNING soa_server1=RUNNING AdminServerTag=UNKNOWN domain_bak=UNKNOWN

Other commands include: kill (server), getLog (last command issues, kill, start), execscript (server migration script)

Complete list of commands:
VERSION

DOMAIN
SERVER
COHERENCESERVER
USER
PASS
STAT
QUIT
START
STARTP
KILL
GETLOG
GETNMLOG
HELLO
CHGCRED
GETSTATES
EXECSCRIPT

Tuesday, March 13, 2012

How to disable RCU requirement testing

I had to install the Oracle SOA/BPM/Webcenter metadata schemas into an unsupported SQL Server environment, and was struggling to bypass the tests in RCU.

To disable the tests, go to the directory where rcu in installed and edit the specific component's xml file:

For example 'SOA Infra' would sit under rcuHome/rcu/integration/soainfra/soainfra.xml, and change the requirements in the file to either a valid test or delete the test, which is expressed between the
<DBPrerequisite></DBPrerequisite> tags.

Difference between Business Transaction Monitoring and Oracle Enterprise Manager

I was tasked to do a demo, based on Oracle Enterprise Manager Grid Control 11g and the SOA Management Pack EE.

The usual question everybody ask at first, is 'What is the difference between OEM GC and BTM ?'.

Firstly, OEM GC is the front-end for all the different components in the Oracle Technology stack, similar to the management consoles you get with the different products (FMW Enterprise Manager, DB Management Console etc), but centralised in one single front-end.

Secondly, the OEM framework is free to use, that is if you don't enable any management packs, which is controlled through configuration, thus enabling you to manage and interact with all your Oracle products through a single instance.

Business Transaction Management, on the other hand is part of the SOA Management Pack EE. At the moment it is a standalone product not integrated with OEM. The product itself was acquired from Amberpoint and as such duplicates some of the functionality of OEM.
BTM breaks down the components into monitored objects, which could be a Java method call, servlet (JSP,ADF etc), Service Bus Service (Proxy and Business), BPEL Process, Web Services, JMS, EJB and others. BTM tries to correlate these objects into a transactional flow where possible and the result is a transactional flow across the components.

A user has the capability to define the relationships, if not already automatically discovered, based on contents of the actual transaction, for example order id in an XML payload of a webservice call, with a BPEL process who interact on the same order id. Another option to correlate different objects is to use the 'fingerprint' option, where a fingerprint is injected into the called object during runtime. This definition is exposed as a transaction.

An example of a transaction might be a user loggin into a customer facing application updating his personal information. A database adapter picks up the change and fires a BPEL process to propogate the change to other systems. In normal circumstances, to track this type of transaction would require a lot of custom logging and correlation of the log entries into a transaction.

BTM captures the information flowing through the different configured objects, and correlate the transactional information into the defined transactions. These transactions can then be investigated/reacted on, on an instance level, either through the front-end, or by implementing policies.

These policies on the objects can define security, service level agreements, logging mechanisms and also alerts or typical fix-it jobs.

So in summary, OEM gives you the overview of the different components and the capability to manage the components, where BTM gives you the capability to follow a transaction (or process) through the technology stack with a breakdown  of each step, across multiple technologies.

UPDATE: In Cloud Control 12c R2, it is now possible to monitor BTM created transactions as part of a Business System. From within Cloud Control it is also possible to drill through to BTM.

Monday, March 12, 2012

BPM Process Spaces 11.1.1.6

Struggling to get Process Spaces installed in the 11.1.1.6 version? The main issue you are facing is the replacement of the Folders_G component in UCM. Ignore the warning to say that the Folders_G component has been superseded by the FolderFramework, and do the configuration on the UCM side as outline and documented for 11.1.1.4/5 using Folders_G.

To prevent the alert from displaying in UCM, open the config.cfg file and set the following configuration value:

DisableFoldersgDeprecationMesssage=1

Friday, March 9, 2012

Active Directory users can not sign into BPM Workspace

Or you get a 'user not authenticated' in the logs, with a valid AD user, create an organization as the administrator and assign all the AD users to it.

A user have to belong to a role, or an organization before access to Workspace is granted to a user.

Also don't forget to add the virtualize true in the security properties to allow SOA/BPM Suite to search across multiple security providers. This configuration can added in the /config/fmwconfig/jps-config.xml

<serviceInstance name="idstore.ldap"
  provider="idstore.ldap.provider">
   ............................
   <property name="virtualize" value="true"/>
   ..............................
</serviceInstance>