Saturday, March 28, 2026

Edit Microsoft 365 Files Seamlessly in WebCenter Content (No Download Needed!)

 Integrating Oracle WebCenter Content (WCC) with Microsoft 365 Office for the Web enables users to seamlessly view and edit supported document formats directly in the browser. This eliminates the need for local downloads and improves collaboration efficiency.

To use this integration, users must have an active Microsoft 365 Office for the Web subscription. Additionally, the WebCenter Content environment must be whitelisted by Microsoft, as outlined in the configuration steps.


Why This Integration Matters

  • 📄 View documents instantly without downloading
  • ✏️ Edit files directly in the browser
  • 🔄 Improve real-time collaboration
  • 🔐 Maintain content security within WCC

Prerequisites

Before starting the configuration, ensure the following:

  • Active Microsoft 365 subscription (Office for the Web enabled)
  • Proper access to WebCenter Content administration
  • Environment whitelisting completed with Microsoft
  • Supported document formats (e.g., Word, Excel, PowerPoint)


Configuration Overview

Below are the high-level steps to integrate WebCenter Content with Microsoft 365 Office for the Web:

  1. Configure WebCenter Content settings for Office integration
  2. Enable required components and services
  3. Set up Microsoft 365 connectivity and authentication
  4. Complete environment whitelisting with Microsoft
  5. Validate document opening and editing via browser

For detailed step-by-step instructions, refer to the official Oracle documentation:
👉 https://docs.oracle.com/en/cloud/paas/webcenter/webcenter-on-marketplace/index.html#integration-of-webcenter-content-with-microsoft-365-office-for-the-web

Monday, August 15, 2022

New WFR Version released : 12.2.1.4 version

 New WFR Version released : 12.2.1.4 version.

With 12c4 version new AP project 2803 is released with 2x version from Hyland.

Changes from previous version is what you say is huge like most of the  ini entry now goes to database instead file system as in previous version.

There will be three schema in 2803 AP project with 12c4 version.

So, please review in details below before switching to new WFR version:


Forms Recognition AP Project 2803 (Version 12.2.1.4.200714)

https://docs.oracle.com/en/middleware/webcenter/content/12.2.1.4/books.html


Step1 Doc: Oracle WebCenter Forms Recognition AP Project 2803 Installation and Configuration Guide--Schema and setups

Step2 Doc: Oracle WebCenter Forms Recognition Solution Migration Tool Installation Guide--Installation  and setups


Step3 Doc: Oracle WebCenter Forms Recognition Solution Configuration Manager Installation Guide--Installation  and setups


Forms Recognition AP Project 1007G (Version 12.2.1.4.0)
Step4 Doc
Oracle WebCenter Forms Recognition AP Packaged Project Release Notes
Oracle WebCenter Forms Recognition AP Project Guide
Oracle WebCenter Forms Recognition AP Project Migration Guide--Copy from Old instance and then follow the mentioned guidelines and below steps..



Migration toll steps after all above:

1.Start the Solution Migration Tool as an Administrator using the option Run As Administrator.
2. Import package either Invoices 1006D.zip or Invoices 1007CA.zip using the menu option. Refer to Solution Migration Tool User Guide for more information.
3. Click the Select Source Project button for the Source Project, then browse to and select it.
  Note: The existing AP Project will be scanned for any issues. If there is any item
  flagged in red, Please resolve it before moving on to the next step.
4. Click Go to migration tab after it is enabled.
5. Click the Select Template Project button for the Template Project, then browse to and
  select the migration template project (.sdp) file. This is typically located at <Installation
  Folder>\Projects\AP 1007G\Global\AP Packaged Project_1007G.sdp
6. As soon as the template project is selected. The project migration activity will start, and
  when it is completed a confirmation message is displayed.
7. Click OK to dismiss the confirmation message.





Wednesday, February 12, 2020

How to remove the default Column of WFR or OFR web verifier application and adjust the length

I came across many requirement where customer need to remove the some default column of the WFR or OFR webverifier column.Which is not required in normal business use case.

So here how it can be easily done:


Like as in below screen shot,we want to disable the Folder column:



For this we can edit the BatchView.aspx page  like below:


<asp:BoundField DataField="BatchFoldersCount" SortExpression="BatchFoldersCount"  Visible="false" >

After that rest the IIS application and then log in back you will see that Column is not visible here as below:



So,its easy.....   :)

In case any issue please leave comment or email me.

Monday, May 13, 2019

How to Upload the file to DOCS using REST API




1)      Environment created above will be same.
You can use UploadFile(Form data) under FileResource
In case you want to upload the file to home folder Parent ID :self andin choose files browse to folder on your local machine and select the files you need to upload as per below screen shot:

And then click send ,files will be uploaded to DOCS.

For commiting to particular folder:


parentID”

Pass folder id as abobe marked in red:



Create Folder in DOCS using Rest API Via Postman

Create Folder in DOCS using Rest API Via Postman

1)      You need to create Environment first. While creating the Environment make sure
Key: hostname
And Value is   https:/XXXXXXcloud.com



As per below screen shot:


 


Also make sure Basic authorization is save






2)Now in case you want to create folder within another folder you need to pass the folder GUID to Post of method Create Folder under Folder Resource marked in red as per below screen shot:



After that click on SEND and you will see the folder will be created inside the folder for which guid is provided.


Below screen shot for getting the folder GUID:




3)Now in case you want to create folder on home page not inside any other folder you need to write self instead of folder GUID as per below screen shot

After that click send and new folder will be created on home page.

Wednesday, July 6, 2016

How to extend domain when servers are deleted from weblogic console

Recently there has been a issue where we have deleted one server from weblogic console.

Now when we want to extent the domain the options to extend are disable as below:


So to enable the option once again follow below points:

1)Go to below location:

<Your_domain>init-info

2)Edit the domain-info.xml and remove the entries for IBR server for example and now I am able to extend the domain for the server.




3) Also

Edit Config-groups.xml with any text editor and remove the following entries of issued server example for IBR shown below:

<group name="IBR-MAIN-APPS">
     <app-deployment name="IBR"/>
   </group>


<server-group name="IBR-MGD-SVRS" processed="true">
     <server-name>IBR_server1</server-name>
   </server-group>


<app-svc-group-mapping>
     <app-svc-group>IBR-MAIN-APPS</app-svc-group>
     <target-server-group>IBR-MGD-SVRS</target-server-group>
   </app-svc-group-mapping>


Issue is that once you delete the server from the console then entries to domain-info.xml is not deleted.

So,to enable the configuration wizard you need to remove the entries so that when you want to extent again it will not find the sever entries and thus allow you to extend.

Thanks


Thursday, December 10, 2015

ice.driver.ImageCaptureDriverException: The file format conflicts with the specified color format. Please re-scan without changing the color type

Today i received a scanner issue while commiting the document from ODC to IPM

The error was :

ice.driver.ImageCaptureDriverException: The file format conflicts with the specified color format. Please re-scan without changing the color type.

I got the below solution that i am sharing here:

Solution:

The File Transfer Mode needs to be set to off.
Click on the "Preferences" link within the dc-client page. (Example: http://CAPTURE_SERVER:CAPTURE_PORT/dc-client )

Set File Transfer Mode to Off.

Thanks
http://oraclefusionmiddleware.in/



Thursday, October 1, 2015

How to commit Document to DOCS using Oracle Documents Cloud service Driver

How to use ODC + Oracle Documents Cloud service Driver to commit documents to Documets cloud service.

With the latest Patch 2  for Capture 11.1.1.9.0 oracle had introduced new Document Cloud Service commit driver.

Using this we can set up commit profile to commit the documents to specific folder in the DOCS.

Few things need to taken care of:

Being that you're accessing a secure site, you need to configure the capture managed server for SSL.

Login to weblogic Console-->Navigate to server-->click on Capture_server

Click on SSL.

 Please see the areas outlined in red in the screen shot below.


 The custom host name verifier should also be set to

weblogic.security.utils.SSLWLSWildcardHostnameVerifier.

===========================


After that login to dc-console and in commit profile choose the driver

Oracle documents cloud service.

Provide the credentials and test.After that chhose the folder where you want to commit.

And then test committing the documets it will work fine.


Thanks



Monday, September 28, 2015

GET_FILE Service Using RIDC

Today i faced issue testing GET_FILE from Generic Soap Port so i tried using RIDC and working fine.

So just though of putting here the sample code
:
package ucm;
import java.io.*;

import oracle.stellent.ridc.*;
import oracle.stellent.ridc.model.*;
import oracle.stellent.ridc.protocol.*;
import oracle.stellent.ridc.protocol.intradoc.*;
import oracle.stellent.ridc.common.log.*;
import oracle.stellent.ridc.model.serialize.*;
import oracle.stellent.ridc.protocol.http.*;

import java.util.List;

/*
* This is a class used to test the basic functionality
* of retrieving a file from Content Server.
*/

public class TestRIDCGetFile {

public static void main(String[] args) {
  // Create a new IdcClientManager
  IdcClientManager manager = new IdcClientManager();
  try {
    // Create a new IdcClient Connection using idc protocol (i.e. socket connection to Content Server)
     IdcClient idcClient = manager.createClient("idc://localhost:4444");
   // Create new context using the 'sysadmin' user
   IdcContext userContext = new IdcContext("sysadmin");
   // Create an HdaBinderSerializer; this is not necessary, but it allows us to serialize the request and response data binders
   //HdaBinderSerializer serializer =
  // new HdaBinderSerializer("UTF-8", idcClient.getDataFactory());
     
  //IdcContext userContext = new IdcContext("weblogic", "Welcome1");
     
  HdaBinderSerializer serializer = new HdaBinderSerializer ("UTF-8", idcClient.getDataFactory ());

   // Databinder for checkin request
   DataBinder dataBinder = idcClient.createBinder();
   dataBinder.putLocal("IdcService", "GET_FILE");
   dataBinder.putLocal("dID", "664");
   dataBinder.putLocal("dDocName", "TRANING000660");
   dataBinder.putLocal("allowInterrupt", "1");

   serializer.serializeBinder(System.out, dataBinder);

   // Create an output stream to output the file received
   FileOutputStream fos = new FileOutputStream("test.txt");
   // Send the request to Content Server
   ServiceResponse response =
   idcClient.sendRequest(userContext, dataBinder);
   // Create an input stream from the response
   InputStream fis = response.getResponseStream();

   // Read the data in 1KB chunks and write it to the file
   byte[] readData = new byte[1024];
   int i = fis.read(readData);

   while (i != -1) {
     fos.write(readData, 0, i);
     i = fis.read(readData);
   }

   // Close the socket connection
   response.close();
   // Don't leave the streams open
   fos.close();
   fis.close();


  } catch (IdcClientException ice) {
   ice.printStackTrace();
  } catch (IOException ioe) {
   ioe.printStackTrace();
  }
}

}

 Thanks

Saturday, September 19, 2015

ADF application Integration with Oracle Documents Cloud Service

Here,

You need to call the AppLink Resource via REST. This gives you a URL which you can drop into an iFrame.

You need to perform some javascript handling that needs to be done when you load an applink url in an iframe.  The appLinkReady event must be handled. In the following code snippets, this was done in a JSP file which is called from the application. Here's the sample JSP file


===========================================================

<%@ page contentType="text/html;charset=UTF-8"%>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
        <title>view</title>
        <script>
            function OnMessage(evt) {
                /*Created By Sheka 14042015, Attach cloud document to my inline frame*/
                if (evt.data.message === 'appLinkReady') {
                  var iframe = document.getElementById('if1');
                  var iframewindow = iframe.contentWindow ? iframe.contentWindow : iframe.contentDocument.defaultView;
                  var dAppLinkRefreshToken = document.getElementById('refreshTokenField').value;
                  var dAppLinkAccessToken = document.getElementById('accessTokenField').value;
                  var dAppLinkRoleName = document.getElementById('roleField').value;
                  var embedPreview = true;
               
                  var msg = {
                      message : 'setAppLinkTokens', appLinkRefreshToken : dAppLinkRefreshToken, appLinkAccessToken : dAppLinkAccessToken, appLinkRoleName : dAppLinkRoleName, embedPreview : embedPreview
                  };
                  iframewindow.postMessage(msg, '*');
              }
            }
            function assignMessageListener(){
                window.addEventListener('message', OnMessage, false);
            }
        </script>
    </head>
    <body onload="assignMessageListener();">
    <iframe id="if1" src="${sessionScope.frameSource}" width="100%" height="700px"></iframe>
    <input type="hidden" id="frameSourceField" value="${sessionScope.frameSource}" size="500"/>
    <input type="hidden" id="refreshTokenField" value="${sessionScope.refreshToken}" size="500"/>
    <input type="hidden" id="accessTokenField" value="${sessionScope.accessToken}" size="500"/>
    <input type="hidden" id="roleField" value="${sessionScope.role}" size="500"/>
 
    </body>
</html>

==================================================================

In your ADF page fragment , add:


<af:inlineFrame id="mainf" source="/view.jsp"  styleClass="AFStretchWidth"

                                inlineStyle="height:800px"></af:inlineFrame>


===================================================================

Finally, in the managed bean, add:

 public String viewFileAction() {
        FacesContext ctx = getFacesContext();
        HttpSession session = (HttpSession)ctx.getExternalContext().getSession(true);              
        AppLink al = CreateFileAppLink.getFileUrl(getFileId());
              System.out.println(al);
              setFrameSource(al.getAppLinkUrl());
              setRefreshToken(al.getRefreshToken());
              setAccessToken(al.getAccessToken());
              setRole(al.getRole());            
        session.setAttribute("frameSource", getFrameSource());
        session.setAttribute("refreshToken", getRefreshToken());
        session.setAttribute("accessToken", getAccessToken());
        session.setAttribute("role", getRole());
return null;

}

===================================================================


Hope this helps :)

Tuesday, July 21, 2015

Standalone URM Integration with Imaging/IPM

URM is nothing more than UCM with an overlay of records management rules. So if you want to integrate URM with IPM.

 We need to create connection in Imaging.For establishing connection with URM ,we need to enable IpmRepository component in URM.

 The IpmRepository component adds functionality to the content server to allow Oracle WebCenter Content: Imaging to store documents and metadata in the content server.

You can download the component from Content server System components which is by default enablein CS.

In case you face issue getting the component .

Let me know. 

Friday, April 3, 2015

How to attach same ADF form to different Human task in BPM

Under your UI project (The first adf form UI that you have created) there will be hwtaskflow.xml.

open hwtaskflow.xml file and copy the following    (this is code for your first Humantask1;in you case it will be something Sales Quote EntryHuman task)

<hwTaskFlow>
<WorkflowName>HumanTask1</WorkflowName>
<TaskDefinitionNamespace>http://xmlns.oracle.com/sample/HumanTask1</TaskDefinitionNamespace>
<TaskFlowId>HumanTask1_TaskFlow</TaskFlowId>
<TaskFlowFileName>WEB-INF/taskFlows/HumanTask1_TaskFlow.xml</TaskFlowFileName>
</hwTaskFlow>

and paste the same in hwtaskflow.xml.

 Now replace <WorkflowName> and <TaskDefinitionNamespace> values with your Humantask2 name and namesspace. then your hwtaskflow.xml should be something like this.

<hwTaskFlow>
<WorkflowName>HumanTask1</WorkflowName>
<TaskDefinitionNamespace>http://xmlns.oracle.com/sample/HumanTask1</TaskDefinitionNamespace>
<TaskFlowId>HumanTask1_TaskFlow</TaskFlowId>
<TaskFlowFileName>WEB-INF/taskFlows/HumanTask1_TaskFlow.xml</TaskFlowFileName>
</hwTaskFlow>
<hwTaskFlow>
<WorkflowName>HumanTask2</WorkflowName>
<TaskDefinitionNamespace>http://xmlns.oracle.com/sample/HumanTask2</TaskDefinitionNamespace>
<TaskFlowId>HumanTask1_TaskFlow</TaskFlowId>
<TaskFlowFileName>WEB-INF/taskFlows/HumanTask1_TaskFlow.xml</TaskFlowFileName>
</hwTaskFlow>

Wednesday, March 25, 2015

Sunday, March 8, 2015

Soa samples for the beginners.

PO-Processing tutorial is the best for starting soa Product.

Here is the link to download with consisting of step by step tutorial and along with xsd and schema which to be used.

http://download.oracle.com/otndocs/products/soa/105-end2end-PO-Processing.zip

Tuesday, January 13, 2015

While Exporting Archive UCM works best with case-insensitive MSSQL server

Error:

 [FMWGEN][SQLServer JDBC Driver][SQLServer]Invalid column name 'dRevClassId'. Unable to create the result set for query 'SELECT DISTINCT Revisions.dRevClassID

Cause:

It usaually occurs when using an MS SQL Server database.

UCM works best with case-insensitive MSSQL server, not with case-sensitive MS SQL Server.

Solution:

Check the output of below query:

SELECT name, collation_name
FROM sys.databases
WHERE name = 'test2'   -- put your database name here

You should see a result like this SQL_Latin1_General_CP1_CS_AS


The substring CS denotes case sensitivity and CI denotes case insensitive.

So if the above query result showing you are using case sensitive (CS) in db then use the following SQL command to alter your db collate:

ALTER DATABASE mds COLLATE SQL_Latin1_General_CP1_CI_AS
For example:

ALTER DATABASE test ----> put your database name here
   COLLATE Latin1_General_CI_AS   -----> replace with whatever collation you need. In this case you want CI.

So if your db is CS then alter your db to CI for case insensitive then retest the issue. Then try to executive the query again.

Friday, December 26, 2014

404 error while entering url http://localhost:16200/cs

Today a user faced issue accessing the content server URL:

Here is the error stack:

####<Dec 26, 2014 2:58:21 PM IST> <Error> <Deployer> <BLRWFD8154> <UCM_server1> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <0e8f5e67a15a28a0:-daba6f0:14a85ec7e6a:-8000-0000000000000002> <1419586101007> <BEA-149205> <Failed to initialize the application 'Oracle Universal Content Management - Content Server' due to error weblogic.application.ModuleException: [HTTP:101217]Cannot deploy ServletContext@35438505[app:Oracle Universal Content Management - Content Server module:/ path: spec-version:2.5] from D:\Oracle\Middleware\user_projects\domains\ucm_domain2\servers\UCM_server1\tmp\_WL_user\Oracle Universal Content Management - Content Server\k6ggd\cs.war on UCM_server1, because there is already a Web application named ServletContext@54156240[app:FMW Welcome Page Application module:/ path: spec-version:2.5 version:11.1.0.0.0] loaded from D:\Oracle\Middleware\user_projects\domains\ucm_domain2\servers\UCM_server1\tmp\_WL_user\FMW Welcome Page Application_11.1.0.0.0\ft1d5i\fmw-welcome.war, using the context path ..
weblogic.application.ModuleException: [HTTP:101217]

It was interesting so thought of sharing the solution:

Cause:
If you see,  fmw-welcome.war   ,it clearly indicating that the this application is using same context path as CS.


Solution:


Go to this path

D:\Oracle\Middleware\user_projects\domains\ucm_domain2\servers\UCM_server1\tmp\_WL_user\FMW Welcome Page Application_11.1.0.0.0\ft1d5

2. Take a backup of application .xml file


3. Change the  context-root for fmw-welcome.war from "/" to "/fmwapp' .


4. Restart the UCM server

It will work

ENJOY!!

Monday, November 10, 2014

Some Important MBEANS Property for Imaging(IPM)

How to resubmit Imaging Document to Invoke the SOA Workflow

Several MBeans can be used in Enterprise Manager under the Application Defined MBeans for

oracle.imaging. Under the server name, the cmd MBeans contain operations that can list the data

from the BPEL_FAULT_DATA table and repair the failures by retrying those. In addition, another

 MBean can clear the fault data once all desired documents have been resubmitted to workflow.


The MBeans useful for viewing, resubmitting, and clearing workflow faults are accessible using WLST as well, with full examples and documentation on how to execute at this link.

clearIPMWorkflowFaults – Clear processing failures that occurred during workflow agent processing.

listIPMWorkflowFaults – Provide details of processing failures that occurred during workflow agent processing.

repairIPMWorkflowFaults – Repair processing failures that occurred during workflow agent processing.

sumIPMWorkflowFaults – Count processing failures during workflow agent processing, grouped by choice of date, application ID, or batch ID.


There is an additional MBean that can be very useful for resubmitting individual Imaging documents that has identified as needing to re-enter workflow.


submitIPMToWorkflow – Submits a document to the workflow agent. Note that a confirmation message is displayed stating that the document has been submitted, however if the document is stored in an application that is not configured with a workflow, no action is taken.

How to resubmit Imaging Document to Invoke the SOA Workflow

In many Scenario where Soa Workflow is being triggered from IPM Application,it happens that the

BPEL workflow is not being triggered because of many issues like workflow injection was disabled

at that time,or SOA instance is down etc.


So the question most Imaging Users arrive at sooner or later is “how can a document be resubmitted to workflow?”

When a document is created or uploaded in WebCenter Imaging, if a workflow connection exists the

Imaging managed server automatically attempts to inject the document into workflow. However, in

scenarios where either the SOA instance is down or another error causes a workflow injection failure,

the workflow never gets started. If an error occurs, the document id is written to the

BPEL_FAULT_DATA table in the Imaging schema (e.g. DEV_IPM).  It’s worth noting up front that

this table only contains errors related to the injection of the document into workflow, but does not

track faults that occur with the BPEL process itself. The BPEL_FAULT_DATA table only tracks

issues where Imaging could not initiate the workflow.


submitIPMToWorkflow – 

Submits a document to the workflow agent. Note that a confirmation message is displayed stating that the document has been submitted, however if the document is stored in an application that is not configured with a workflow, no action is taken.

=====================================================


In addition to Web Service calls, Java can be used to resubmit documents to workflow. The DocumentService class allows for the same operation using the following method:


docService.submitToWorkflow("3.IPM_123456");



ENJOY@@@@