Wednesday 4 December 2013

Resolving UCM Server start issues

The major issues faced while starting up UCM server is related to DB, some f the common checklist items before starting the DB is mentioned below

1. Ensure that Admin Server is running
2. Ensure the UCM DB is up and running. If you're unsure, the DB that UCM is referring can be found by Navigating to Servers -> UCM_server1 -> Monitoring -> JDBC ->CSDS -> Configuration ->ConnectionPool

Here you can view the DB to which the UCM is referring to. To test whether the DB is up and running use
   netstat -plan|grep 1521   . Here the port 1521 is the default DB port, else use the port that is inferred from the CSDS connection pool screen

A common console error can be found below :


<Dec 4, 2013 5:45:06 AM EST> <Error> <ServletContext-> <BEA-000000> <There is aninitialization failure during start up of UCM.>
<Dec 4, 2013 5:45:06 AM EST> <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.
        at idcservlet.ServletUtils.initializeContentServer(ServletUtils.java:1284)
        at idcservlet.ServletUtils.startAndConfigureServer(ServletUtils.java:547)
        at idcservlet.ServletUtils.initializeAllServers(ServletUtils.java:460)
        at idcservlet.IdcFilter.initContentServer(IdcFilter.java:181)
        at idcservlet.IdcFilter.init(IdcFilter.java:156)
        Truncated. see log file for complete stacktrace
Caused By: java.io.IOException: Oracle WebCenter Content failed to initialize inside its servlet environment.
        at intradoc.idcwls.IdcIntegrateWrapper.initializeServer(IdcIntegrateWrapper.java:138)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        Truncated. see log file for complete stacktrace
Caused By: intradoc.common.ServiceException: !csProviderUnableToInitialize,SystemDatabase
        at intradoc.server.IdcSystemLoader.loadProviders(IdcSystemLoader.java:2371)
        at intradoc.server.IdcSystemLoader.initProviders(IdcSystemLoader.java:2124)
        at intradoc.server.IdcSystemLoader.finishInit(IdcSystemLoader.java:400)
        at intradoc.server.IdcSystemLoader.init(IdcSystemLoader.java:335)
        at intradoc.server.IdcServerManager.init(IdcServerManager.java:120)
        Truncated. see log file for complete stacktrace
Caused By: intradoc.data.DataException: !csDbUnableToInitalize,SystemDatabase!csProviderFailedToExtractAndUseDataSource,CSDS
        at intradoc.jdbc.JdbcManager.init(JdbcManager.java:92)
        at intradoc.jdbc.JdbcWorkspace.init(JdbcWorkspace.java:78)
        at intradoc.provider.Provider.init(Provider.java:71)
        at intradoc.server.IdcSystemLoader.loadProviders(IdcSystemLoader.java:2361)
        at intradoc.server.IdcSystemLoader.initProviders(IdcSystemLoader.java:2125)
        Truncated. see log file for complete stacktrace
Caused By: intradoc.data.DataException: !csProviderFailedToExtractAndUseDataSource,CSDS
        at intradoc.provider.ProviderPoolManager.init(ProviderPoolManager.java:134)
        at intradoc.jdbc.JdbcManager.init(JdbcManager.java:79)
        at intradoc.jdbc.JdbcWorkspace.init(JdbcWorkspace.java:82)
        at intradoc.provider.Provider.init(Provider.java:72)
        at intradoc.server.IdcSystemLoader.loadProviders(IdcSystemLoader.java:2361)
        Truncated. see log file for complete stacktrace
Caused By: intradoc.common.ServiceException: !csProviderFailedToAccessDataSource
        at intradoc.provider.ProviderPoolManager.computeExternalConnectionObject(ProviderPoolManager.java:263)
        at intradoc.provider.ProviderPoolManager.init(ProviderPoolManager.java:130)
        at intradoc.jdbc.JdbcManager.init(JdbcManager.java:80)
        at intradoc.jdbc.JdbcWorkspace.init(JdbcWorkspace.java:82)
        at intradoc.provider.Provider.init(Provider.java:72)
        Truncated. see log file for complete stacktrace
Caused By: intradoc.common.ServiceException: !csUnableToExecMethod,getConnection
        at intradoc.common.ClassHelperUtils.convertToStandardException(ClassHelp erUtils.java:202)
        at intradoc.common.ClassHelperUtils.convertToStandardExceptionAndThrow(ClassHelperUtils.java:179)
        at intradoc.common.ClassHelperUtils.executeIdcMethodConvertToStandardExceptions(ClassHelperUtils.java:410)
        at intradoc.provider.ProviderPoolManager.getExternalRawConnection(ProviderPoolManager.java:945)
        at intradoc.provider.ProviderPoolManager.computeExternalConnectionObject(ProviderPoolManager.java:243)
        Truncated. see log file for complete stacktrace
Caused By: weblogic.jdbc.extensions.ConnectionDeadSQLException: weblogic.common.resourcepool.ResourceDeadException: 0:weblogic.common.ResourceException: Could not create pool connection. The DBMS driver exception was: ORA-28001: the password has expired

        at weblogic.jdbc.common.internal.JDBCUtil.wrapAndThrowResourceException(JDBCUtil.java:250)
        at weblogic.jdbc.common.internal.RmiDataSource.getPoolConnection(RmiDataSource.java:456)
        at weblogic.jdbc.common.internal.RmiDataSource.getConnectionInternal(RmiDataSource.java:538)
        at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:498)
        at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:491)
        Truncated. see log file for complete stacktrace
>
<Dec 4, 2013 5:45:06 AM EST> <Notice> <Log Management> <BEA-170027> <The Serverhas established connection with the Domain level Diagnostic Service successfully                                                                                                                     .>
<Dec 4, 2013 5:45:06 AM EST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to ADMIN>
<Dec 4, 2013 5:45:06 AM EST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to RESUMING>
<Dec 4, 2013 5:45:06 AM EST> <Notice> <Server> <BEA-002613> <Channel "Default[1]" is now listening on 127.0.0.1:16200 for protocols iiop, t3, ldap, snmp, http.>                                                                                                                    
<Dec 4, 2013 5:45:06 AM EST> <Notice> <Server> <BEA-002613> <Channel "Default" is now listening on 172.10.10.70:16200 for protocols iiop, t3, ldap, snmp, http.>                                                                                                                    
<Dec 4, 2013 5:45:06 AM EST> <Notice> <WebLogicServer> <BEA-000330> <Started Web Logic Managed Server "UCM_server1" for domain "base_domain" running in Production Mode>
<Dec 4, 2013 5:45:21 AM EST> <Warning> <JDBC> <BEA-001129> <Received exception while creating connection for pool "CSDS": ORA-28001: the password has expired
.>
<Dec 4, 2013 5:45:22 AM EST> <Warning> <JDBC> <BEA-001129> <Received exception while creating connection for pool "CSDS": ORA-28001: the password has expired
.>
<Dec 4, 2013 5:45:23 AM EST> <Warning> <JDBC> <BEA-001129> <Received exception while creating connection for pool "CSDS": ORA-28001: the password has expired
<Dec 4, 2013 5:45:36 AM EST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to RUNNING>
<Dec 4, 2013 5:45:36 AM EST> <Notice> <WebLogicServer> <BEA-000360> <Server started in RUNNING mode>


The Server has already started according to the log!!! Has it really??

If you closely observe the highlighted logs, it says it cant connect to CSDS, the reason is logged as well!!!
In my case the password for DEV_OCS user has expired.  If you try to login into console, you'll get oracle ucm server you'll find this message "The Server is unavailable. Please contact the administrator of this site to report the problem. Click here for server process administration"

Resolving the issue :

1. Login as 'sys' user with SYSDBA role.
2. Expand 'Other users ', you can find 'DEV_OCS'


3. Right Click 'DEV_OCS' ->Edit User
4. Uncheck 'Password Expired'


5. Assign a new password, confirm the password
6. Click on Apply, followed by close
7. After resolving the DB issues (in General), verify whether you can connect to the UCM DB with DEV_OCS user.
8. Once you're able to connect to the DB from DEV_OCS user, then you're good to go.
9. Restart the UCM server and you should be able to access the UCM console via test.example.com:16200/cs

The trick is to make sure DB is up, in running state and accessible as well!!!! 

No comments:

Post a Comment