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.

  1. Using attachment documents with Oracle BPM Human Tasks
  2. Using a Content Server documents with Oracle BPM Human Tasks
  3. 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:

01_HumanTask_UseDocumentPackage

Which after deployment results in this error message: Document Store not available. Please configure the document store.

02_Error_DocumentOpslagNietBeschikbaar

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.

11_SOAINFRA_Config1

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.

14_WLS_Security1

Create a new Map WF-ADMIN-USER and in that map create a new Key WF-ADMIN-CREDENTIAL

15_WLS_Security2

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.

13_UCM_Security1

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.

Result

You may now upload documents to your task:

21_Task_UploadUCM

Or search UCM for documents:

22_Task_SearchUCM

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.

Attachment

References:

Houd jij je kennis graag up to date?

Mis niets meer van onze kennisdocumenten, events, blogs en cases: ontvang als eerste het laatste nieuws in je inbox!

Fijn dat we je op de hoogte mogen houden!