首先确认当前环境中已安装跟iServer位数相同的Oracle客户端,并且配置了Oracle环境变量。然后在iServer/support/objectsjava/bin目录下再执行检查依赖命令 ldd libSuEngineOracle.sdx | grep not看下输出结果返回的是libclntsh.so.10.1 => not found 确认该问题是由于缺少依赖文件 libclntsh.so.10.1导致的。解决办法:先进入到 Oracle客户端目录下,将文件libclntsh.so.11.1 建立成名为 libclntsh.so.10.1的软连接,即运行命令 ln –s /[Oracle客户端]/libclntsh.so.11.1 libclntsh.so.10.1(注意这里源文件libclntsh.so.11.1要写其所在的绝对路径,目标文件libclntsh.so.10.1路径则不用再指定);然后还需要在系统环境中添加LD_LIBRARY_PATH变量,即在/etc/profile中添加以下配置:
export UGO_HOME=[iServer目录]/support/objectsjava
export LD_LIBRARY_PATH=$UGO_HOME/bin:$LD_LIBRARY_PATH
export PATH=$UGO_HOME/bin:$PATH
添加完后执行source /etc/profile使添加的环境配置生效;最后再重新启动iServer,重新发布文件型工作空间、Oracle数据库型数据源为数据服务后数据源列表显示正常。