Friday, May 31, 2013

UCM 11g Fails to Start due to csDbFailedToGetNonEmptyTableList Error

After WebCenter 11.1.1.7.0 (PS6) installation with MS. SQL Server 2008 R2, I created one domain includes WebCenter Portal and WebCenter Content components, everything went good. When I tried to start UCM server, it fails to start with following exceptions:-

 <31/05/2013 12:16:48 PM NZST> <Error> <ServletContext-> <BEA-000000> <Could not start server of type 'server' at default relative web root URL 'cs'.javax.servlet.ServletException: Could not start up IDC server deployment.Caused By: java.io.IOException: UCM Server failed to initialize inside its servlet environment.Caused By: intradoc.data.DataException: !csDbFailedToGetNonEmtpyTableList,WebCenter,DEV_OCSS

Cause

I have configured case-sensitive database for WebCenter. In the Weblogic CSDS data source configured for MS. SQL Server, the database name case doesn't match the case on the database on SQL Server.

Such as like the database name in the data source is all lower case but the actual database name in SQL server is all upper-case even i have given same upper-case during RCU schema creation and domain creation time.

Its looking me the bug with SQL Server installation with WebCenter Content. 

Solution

In the CSDS data source, set the database name so that it exactly matches the database name in SQL Server:

1. Go to WLS Admin console, in the Domain Structure pane, expand Services

2. Select Data Sources

3. In the Summary of JDBC Data Sources pane select the CSDS link

4. In the Settings for CSDS pane select the Connection Pool tab

5. In the Properties field change the databaseName to match the case of the database on SQL Sever

Example:
Change:

databaseName=WebCenter (in my case, its change in this way)

To:

databaseName=WEBCENTER
6. Click the Save button8. Restart the Admin Server and the UCM Managed Server.

Note: As a best practice, do this steps for all data-sources configured for MS. SQL Server.