1、尝试配置Oracle11g客户端,连接UCM11g服务器的数据库。报错:无监听程序。
在服务器上打开ORACL_HOME\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora,内容如下:
------------------
# listener.ora Network Configuration File: D:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = D:\app\Administrator\product\11.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:D:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
ADR_BASE_LISTENER = D:\app\Administrator
------------------
修改listener.ora,在SID_LIST中添加监听描述,如下:
------------------
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = D:\app\Administrator\product\11.2.0\dbhome_1)
(SID_NAME = ORCL)
)
------------------
同时,修改“HOST = localhost”为“HOST = ucm-server”,即修改为服务器的“机器名”。
修改后的listener.ora内容如下:
------------------
# listener.ora Network Configuration File: D:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = D:\app\Administrator\product\11.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:D:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")
)
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = D:\app\Administrator\product\11.2.0\dbhome_1)
(SID_NAME = ORCL)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = ucm-server)(PORT = 1521))
)
)
ADR_BASE_LISTENER = D:\app\Administrator
------------------
然后打开ORACL_HOME\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora,同样修改“HOST = localhost”为“HOST = ucm-server”。
然后重启Oracle的监听,即可。
2、修改服务器“机器名”后,UCM11g无法启动。
原因:UCM11g作为Web应用部署在Weblogic上,UCM的启动参数会依赖Weblogic的服务。
编辑打开D:\Oracle\Middleware\user_projects\domains\ucm_domain\bin\startManagedWebLogic.cmd文件,会看到两个地方使用了Weblogic的管理控制台URL路径。
分别如下:
echo %1 managedserver1 http://ucm-server:7001
set ADMIN_URL=http://ucm-server:7001
这两个地方修改成正确的机器名即可。
3、使用stellent ridc向UCM11g中CheckIn数据,如果数据标题大于80个字符,则会报错。
错误信息:csUnableToCheckIn,csCheckinFieldTooLong,apTitleDocTitle,80.
很明显是字符长度超出字段的存储范围。
根据提示,并在数据库中查找,发现是dDocTitle字段长度定义为80,需要手工修改UCM数据库中dDocTitle字段的长度。
经如下SQL语句在UCM的数据库中检索,发现最少有7表中含有dDocTitle字段。
------------------
select Table_Name from All_Tab_Cols where Owner='UCM_OCS' and Column_Name='DDOCTITLE'
------------------
这7个表的名称是ARCHIVEHISTORY、CONTENTRETENTIONSTEPS、IDCTEXT1、IDCTEXT2、PROBLEMREPORTS、REVISIONS、WORKFLOWHISTORY。
全部修改这7个表的dDocTitle字段长度为VARCHAR2(2000)。
修改完成后,数据标题大于80个字符的数据CheckIn成功。
4、在UCM11g搜索引擎为SearchIndexerEngineName=OracleTextSearch,当用stellent ridc对UCM11g做分页检索操作,数据浏览超过2048条时,UCM控制台报错:
------------------
intradoc.common.ServiceException: !csSearchUnableToReturnResults
------------------
分页检索已经设置了ResultCount、StartRow、EndRow 等参数,如下:
------------------
dataBinder.putLocal("IdcService", "GET_SEARCH_RESULTS");
dataBinder.putLocal("ResultCount", strResultCount);
dataBinder.putLocal("QueryText", strQueryText);
dataBinder.putLocal("SearchQueryFormat", "Universal");
dataBinder.putLocal("StartRow", start);
dataBinder.putLocal("EndRow", end);
------------------
使用UCM默认的搜索引擎为OracleTextSearch时,要突破检索结果2048的限制,其解决方法,有两种:
(1) 打开UCM_HOME\Middleware\Oracle_ECM1\ucm\idc\resources\core\tables\文件夹,编辑searchindexerrules.htm文件,设置检索返回最大数据值。
打开searchindexerrules.htm文件,找到如下2个位置:
------------------
<tr>
<td>(ORACLETEXTSEARCH)MaxAppSearchResults</td>
<td>2000</td>
</tr>
------------------
<tr>
<td>(ORACLETEXTSEARCH)MaxResultCount</td>
<td>2048</td>
</tr>
------------------
将2048修改为一个超大值,比如:204800000。 然后保存searchindexerrules.htm文件,重启UCM服务即可。
此时可以登录UCM系统,可以分页查看所有数据。
当然前提是..\user_projects\domains\ucm_domain\ucm\cs\config\config.cfg中设置了查询返回最大值MaxResults。
(2) 不使用OracleTextSearch引擎,而改用METADATA方式,显式设置SearchEngineName为DATABASE.METADATA。
stellent ridc中代码如下:
------------------
DataBinder dataBinder = client.createBinder();
dataBinder.putLocal("SearchEngineName", "DATABASE.METADATA");
dataBinder.putLocal("IdcService", "GET_SEARCH_RESULTS");
......
......
------------------
[--END--]
--转自