Rick Green from Oracle explains in these two video’s (from the Oracle Learning YouTube Channel) how to request and activate an Oracle Cloud (trial) Service and how to administer these cloud services.
BPM Suite PS6 (11.1.1.7 ) available for download
Reblogged from SOA Community Blog:
PS6 is a Major Update which includes:
· Complete process model to execute from Composer
· Simplified end user experience in Workspace
· Adaptive Case Management
· Instance Revisioning
The new version of BPM Suite PS6 is available. At our SOA Community Workspace (SOA Community membership required) you can find the latest presentation, highlights include
Process Composer• Business analysts can capture the process…
Error with Weblogic Domain Configuration Wizard (containing UCM)
When creating a new DEV domain for BPM, SOA and UCM 11.1.1.6 and using the config.sh wizard the following error occured:

ERROR create_gui com.oracle.cie.wizard.domain.gui.tasks.DomainCreationGUITask - Generation Error!! Traceback (innermost last): File "<iostream>", line 17, in ? TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'
The solution is simple when you now the answer (as always). Instead of using the “default” config script in %MIDDLEWARE_HOME%/wlserver_10.3/common/bin
You should use the config.sh script in:
%MIDDLEWARE_HOME%/Oracle_ECM1/common/bin
References:
- Andy Weaver @ Oracle Forums - Domain Creation Failed when configuring domain for UCM 11g
How to Configure WebLogic Server to Send a Notification When Its Configuration is Changed
My former collegue, Java maven (no not that one, this one) and friend Pierluigi contacted me about my post regarding the Weblogic Security Audit Provider. As always Pier is very political correct ;)

To my positive surprise he found a great solution for the limitation of the security audit provider. He discovered a way to configure WebLogic server to send a notification when it’s configuration is changed [Knowledge Base ID 1377733.1].
Which is awesome if you have a large Oracle environment and maintenance team and want to keep track of all the changes. Wish we knew this last year at the huge envuironment I was working then.
His blogpost contains all the code, scripts, etc so go and check it out!!! :)
And to end with his favourite quote:

References:
- Java mon amour - How to Configure WebLogic Server to Send a Notification When Its Configuration is Changed
- Oracle Fusion Middleware - Configuring Watches and Notifications
JDeveloper crashing while using BPM plugin
We have this really annoying bug in JDeveloper 11.1.1.6 while using the Oracle BPM plugin.
The application crashes approximately every hour with this nice feedback:
and this logging:
oracle.adf.share.ADFContext:Feb 8, 2013 9:49:35 AM oracle.adf.share.ADFContext getCurrent
WARNING: Automatically initializing a DefaultContext for getCurrent.
Caller should ensure that a DefaultContext is proper for this use.
Memory leaks and/or unexpected behaviour may occur if the automatic initialization is performed improperly.
This message may be avoided by performing initADFContext before using getCurrent().
For more information please enable logging for oracle.adf.share.ADFContext at FINEST level.
oracle.adf.share.jndi.ReferenceStoreHelper:Feb 8, 2013 9:49:35 AM oracle.adf.share.jndi.ReferenceStoreHelper getReferencesMapEx
WARNING: Incomplete connection reference object for connection:STUB
oracle.jps.common:Feb 8, 2013 9:49:36 AM oracle.security.jps.internal.common.util.StrictValidationEventHandler handleEvent
WARNING: Failed to validate the xml content. SchemaLocation: schemaLocation value = 'http://xmlns.oracle.com/oracleas/schema/11/jps-config-11_1.xsd' must have even number of URI's. Location: unavailable.
oracle.jps.common:Feb 8, 2013 9:49:36 AM oracle.security.jps.internal.common.util.StrictValidationEventHandler handleEvent
WARNING: Failed to validate the xml content. cvc-complex-type.2.4.b: The content of element 'propertySets' is not complete. One of '{"http://xmlns.oracle.com/oracleas/schema/11/jps-config-11_1.xsd":propertySet}' is expected. Location: unavailable.
oracle.adf.share.jndi.ReferenceStoreHelper:Feb 8, 2013 9:49:36 AM oracle.adf.share.jndi.ReferenceStoreHelper getReferencesMapEx
WARNING: Incomplete connection reference object for connection:SOA_MDS
Invoking command: Changes in myProcess
Invoking command:
Invoking command:
Invoking command:
Invoking command:
Performing action Save[ from oracle.bpm.fusion.studio.editor.ProcessEditor ]
Invoking command: [ from oracle.bpm.fusion.studio.editor.ProcessEditor ]
Performing action Save All[ from oracle.bpm.fusion.studio.editor.ProcessEditor ]
Invoking command: [ from oracle.bpm.fusion.studio.editor.ProcessEditor ]
Invoking command: [ from oracle.ide.navigator.ProjectNavigatorWindow ]
Invoking command: modify adf-config for soa
Invoking command: [ from oracle.ide.runner.RunLogPage ]
Invoking command:
Invoking command:
Invoking command:
Invoking command:
Uncaught exception
java.lang.NullPointerException
net.miginfocom.layout.Grid.addLinkIDs()
net.miginfocom.layout.Grid.<init>()
net.miginfocom.swing.MigLayout.checkCache()
net.miginfocom.swing.MigLayout.getSizeImpl()
net.miginfocom.swing.MigLayout.preferredLayoutSize()
o.bpm.ui.layout.MigLayout.preferredLayoutSize(MigLayout.java:114)
j.a.Container.preferredSize(Container.java:1599)
j.a.Container.getPreferredSize(Container.java:1584)
jx.s.JComponent.getPreferredSize(JComponent.java:1636)
o.ii.editor.SplitPane.doLayoutBottomTabs(SplitPane.java:537)
o.ii.editor.SplitPane.doLayout(SplitPane.java:523)
j.a.Container.validateTree(Container.java:1507)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validate(Container.java:1480)
jx.s.RepaintManager.validateInvalidComponents(RepaintManager.java:669)
jx.s.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:124)
j.a.event.InvocationEvent.dispatch(InvocationEvent.java:209)
j.a.EventQueue.dispatchEventImpl(EventQueue.java:642)
j.a.EventQueue.access$000(EventQueue.java:85)
j.a.EventQueue$1.run(EventQueue.java:603)
j.a.EventQueue$1.run(EventQueue.java:601)
j.security.AccessController.doPrivileged(Native Method)
j.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
j.a.EventQueue.dispatchEvent(EventQueue.java:612)
j.a.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
j.a.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
j.a.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
j.a.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
j.a.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
j.a.EventDispatchThread.run(EventDispatchThread.java:122)
Uncaught exception
java.lang.NullPointerException
net.miginfocom.layout.Grid.addLinkIDs()
net.miginfocom.layout.Grid.<init>()
net.miginfocom.swing.MigLayout.checkCache()
net.miginfocom.swing.MigLayout.getSizeImpl()
net.miginfocom.swing.MigLayout.preferredLayoutSize()
o.bpm.ui.layout.MigLayout.preferredLayoutSize(MigLayout.java:114)
j.a.Container.preferredSize(Container.java:1599)
j.a.Container.getPreferredSize(Container.java:1584)
jx.s.JComponent.getPreferredSize(JComponent.java:1636)
o.ii.editor.SplitPane.doLayoutBottomTabs(SplitPane.java:537)
o.ii.editor.SplitPane.doLayout(SplitPane.java:523)
j.a.Container.validateTree(Container.java:1507)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validateTree(Container.java:1513)
j.a.Container.validate(Container.java:1480)
jx.s.RepaintManager.validateInvalidComponents(RepaintManager.java:669)
jx.s.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:124)
j.a.event.InvocationEvent.dispatch(InvocationEvent.java:209)
j.a.EventQueue.dispatchEventImpl(EventQueue.java:642)
j.a.EventQueue.access$000(EventQueue.java:85)
j.a.EventQueue$1.run(EventQueue.java:603)
j.a.EventQueue$1.run(EventQueue.java:601)
j.security.AccessController.doPrivileged(Native Method)
j.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
j.a.EventQueue.dispatchEvent(EventQueue.java:612)
j.a.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
j.a.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
j.a.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
j.a.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
j.a.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
j.a.EventDispatchThread.run(EventDispatchThread.java:122)
Marc Nelson mentions this in his blogpost but Oracle Support seemed more confused then us about this error. So in the end we discovered a quick fix solution on the Oracle forums here.
Solution:
The bug is in one of the third party librararies which is named: MigLayout from Mig Infocom AB.
According to their support forum this bug is fixed with Version 3.6.3:
You can download the fix in version 3.6.3 here
and replace the Library 3.6 which is shipped with Jdeveloper in directory:
%JDEV_HOME%\jdeveloper\ide\lib\miglayout-3.6-swing.jar
Dont forget to rename the downloaded 3.6.3 version and overwrite the old file, JDev will be looking for the exact 3.6 name.
References:
- Marc Nelson blog – BPM Process Editor problems in 11.1.1.6
- Oracle Forums - JDeveloper craches every 10 minutes requiring restart
Integration of Oracle BPM and Oracle UCM/WCC
This blog is the 3rd in a serie of 3 blogposts. All regarding the different approaches we tested during our project where we had very content rich (a lot of documents) Oracle BPM processes.
- Using attachment documents with Oracle BPM Human Tasks
- Using a Content Server documents with Oracle BPM Human Tasks
- Integration of Oracle BPM and Oracle WCC/UCM
So let’s start with the beginning. The Oracle documentation mentions how to enable this integration from the Human Task configuration. However it’s a bit vage how to configure the UCM/BPM integration itself.
So first we enable this magical checkbox on our Human Task:
Which after deployment results in this error message: Document Store not available. Please configure the document store.
When we check our loggings we can see that:
<Error> <oracle.soa.services.common> <BEA-000000><oracle.bpel.services.workflow.repos.UCMUtil.getUCMInfo> Error retrieving UCM information from the server. Ensure that credential store map WF-ADMIN-USER with key WF-ADMIN-CREDENTIAL contains UCM server admin username/password. Also ensure that Workflow configuration parameter UcmIdcUrl contains IDC socket connection url to connect to UCM server and UCM server has permission to let SOA server connect to it using IDC protocol.
Of to work we go. We need to make sure that our SOA/WLS/UCM configuration is correct and these settings are scattered on multiple locations in Oracle Enterprise Manager.
Before we start you need to make sure you have the IDC (IntraDoc) port of your UCM installation. To verify this check your UCM configuration file: %domainhome%/ucm/cs/config/config.cfg
Most likely this will be 4444.
First the SOA/BPM part:
Right-click soa-infra -> SOA Administration -> Workflow config -> “More Workflow Notification Configuration Properties” -> workflow config -> human-workflow.
Make sure the setting UcmIdcUrl is configured correctly to contain the UCM-server hostname and IDC port.
Second we configure the username and password the BPM/SOA engine will use to connect to the UCM server which is located in the Weblogic section of EM. So rightclick on your domain in Weblogic Domain -> yourdomain -> Security -> Credentials.
Create a new Map WF-ADMIN-USER and in that map create a new Key WF-ADMIN-CREDENTIAL
3rd part is to make sure the UCM server will accept our connection, so let’s rightclick the Oracle Universal Content Management server in the WebCenter section of your Enterprise Manager. Make sure the Intradoc (IDC) serverport is correct and that the IP filter contains the SOA/BPM server hostname.
Save, restart if needed and check your Workspace Manager again for your attachments.
And voila the error shouldn’t be there anymore and when clicking the Add icon you will now find some additional UCM options. Small cheer here, your BPM/UCM configuration is now working.
You may now upload documents to your task:
Or search UCM for documents:
Success, we have a working configuration between Oracle BPM and Oracle UCM.
In our case we have the additonal requirement to attach the document from the BPM process as mentioned in the earlier blogpost.So instead of mapping the full URLfor our content management server and document in the attachment.URI element, we can just simply use the following function: concat(“ecm://”,bpmn:getDataObject(‘DO_Case’)/ns1:case/…/DocumentNr)
where documentNr is an element containt the ID returned by the UCM servers CheckInUniversal operation.
The attachment.URI element will look something like this: ecm://100
Besides that, make sure to the attachment.StorageType ellement to: UCM
When the task is assigned to the BPM Workspace it will now contain the reference to the correct UCM document.
References:
- Oracle – Storing Documents in Oracle Enterprise Content Management
- Alaa & Perco @ Oracle Forums - BPM 11.1.1.5.0 Features Pack: UCM integration issue
Using a Content Server with Oracle BPM Human Tasks
This blog is the 2nd in a serie of 3 blogposts. All regarding the different approaches we tested during our project where we had very content rich (a lot of documents) Oracle BPM processes.
- Using attachment documents with Oracle BPM Human Tasks
- Using a Content Server documents with Oracle BPM Human Tasks
- Integration of Oracle BPM and Oracle WCC/UCM (soon)
After succesfully adding documents in the full payload of our Human Task payload (this blogpost) we decided to help our ADF developers and spare them the huge base64 content. :)
So the next step was trying to store the document in Oracle UCM/WCC.
So how did we end up doing that ? Good question, glad you asked.
First we added a Service Call activity in our Oracle BPM project and used the imported default Oracle UCM CheckIn.wsdl.
We use the following Data Association in our Service Call mapping:
We can then change the data association in our Human Task. Instead of the attachment.content in the former blogpost we now use the attachment.uri field to concat the string:
“http://SERVERNAME:PORT/cs/idcplg?IdcService=GETFILE&dID=” and the CheckInUniversal callout result which contains a documentID (for an example see this blogpost)
The result is the attachment in your ADF page containing an URL reference to your content server.















