安装完WebCenter后,发现访问WebLogic Server EM报“Error 503–Service Unavailable”错误,错误信息如下:

Error 503–Service Unavailable

From RFC 2068 Hypertext Transfer Protocol — HTTP/1.1:

10.5.4 503 Service Unavailable

The server is currently unable to handle the request due to a temporary overloading or maintenance of the server. The implication is that this is a temporary condition which will be alleviated after some delay. If known, the length of the delay may be indicated in a Retry-After header. If no Retry-After is given, the client SHOULD handle the response as it would for a 500 response.

Note: The existence of the 503 status code does not imply that a server must use it when becoming overloaded. Some servers may wish to simply refuse the connection.


查找了一下原因,发现因为是$MW_HOME/user_projects/domains//sysman/state/targets.xml文件丢失引起的,解决步骤如下:
1.备份旧的targets.xml文件;
2.按以下模板修改targets.xml文件









 
按你域的情况修改以上百分号表示的变量,以下是示例:








3.重启AdminServer;
4.确认 http://:7001/em能够正常访问;
5.备份正确的targets.xml文件。

想在公司的服务器上安装OpenLDAP,安装RPM包时报了一堆的依赖包错误,因为是在公网的虚拟机上,不想费那么大的劲去拷贝安装RPM包,决定直接从映射光盘上通过建立YUM仓库解决。
步骤如下:
1、挂载光驱
# mount –o loop /dev/sdc /mnt
2、安装建立仓库工具
# rpm –ivh /mnt/Server/createrepo-0.4.4-2.fc6.noarch.rpm
3、创建包仓库文件夹,并建立仓库
# mkdir /var/RHEL5
# cd /var/RHEL5
# createrepo .
4、配置YUM客户端
# vi /etc/yum.repos.d/server.repo
[RHEL Repository]
name=RedHat Linux Linux
baseurl=file:///mnt/Server
enabled=1
gpgcheck=0
保存退出
5、进行RPM包的安装
# yum install RPM包名
在我安装时,报一个warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 37017186的错误,按道理已经在配置文件里指定不检查KEY,听说是RHEL的一个bugs,不理这么多,直接绕过,用# yum install –nogpgcheck RPM包名实现RPM包的安装。

利用YUM安装的方式,可以实现安装RPM包时自动把相关的依赖包给装上。
附:
YUM简单使用:
安装:
yum install RPM包的名称
删除:
yum remove RPM包的名称
搜索:
yum search  RPM包的名称
显示仓库所有文件:
yum list
显示安装包详细说明信息:
yum info  RPM包的名称
更新安装:
yum update  RPM包的名称
清楚服务器仓库缓存等:
yum clean all
本地安装:
yum localinstall  /路径/RPM包的名称
本地更新:
yum localupdate /路径/RPM包的名称
显示安装包所安装的文件列表:
yum provides  RPM包的名称
反查文件所属安装包:
yum whatprovides  /路径/文件
注:
若安装时需要安装到指定的文件夹,则需要 –installroot
举例:
       yum install –installroot=/mnt  vim

Oracle UCM11g把应用服务器绑定在Weblogic上,但是怎么样利用外部LDAP作为安全提供者却语焉不详,官方文档里也只是描述怎么样配置Oracle Directory Manager,我不想用IDM这又臭又大的东西,怎么样配置其它LDAP基本就自己摸索了,鄙视这种不负责任的行为。
   废话少说,在Linux AS5上安装并编写LDIF文件,建立LDAP的基础结构如下:
image
登录Weblogic服务器的管理Console,在Domain Sturcture下选择Security Realms,在列表中选择myrealm,打开安全配置页面。
image
点击Provider,配置新的安全提供者。选择类型为“OpenLDAPAuthenticator”,并起名为OpenLDAP。
image
创建Provider后对Provider Specific进行配置并保存。
image
Host:LDAP服务器
Port:LDAP服务端口
Principal:LDAP服务管理用户名
Credential:LDAP服务管理员密码
User Base DN:LDAP中与用户对应的DN
User Name Attribute: cn
User Object Class: person
Group Base DN:与用户组对应的DN,这个要特别注意,因为UCM中的用户组就是对应与此DN下的Entry。
Use Retrieved User Name as Principal:勾选
Propagate Cause For Login Exception:勾选
配置好后保存,重新启动Weblogic AdminServer,从myrealm的Users and Groups页面可以看到LDAP中的用户。
image
打开UCM,确认LDAP中用户可以登录访问UCM,同时正确映射用户角色与账户。
image
image

客户生产环境的数据库不知什么原因突然挂了,无论怎么调整也不能启动监听器服务,用JDBC访问永远是访问不通,折腾了大半天终于忍无可忍,决定重新创建一个数据库实例,然后再恢复数据。

停下的应用服务,数据库,然后把原来的UCM数据库文件导入,启动UCM,发现UCM服务没法正常启动。从Admin Server查看日志,发现报如下错误:
.Unable to create result set for query ‘select * from CpdLinks where dCpdGuid=’0”. ORA-00942: table or view does not exist
ORA-00942: table or view does not exist

intradoc.common.ServiceException: !csDbUnableToCreateResultSet,select * from CpdLinks where dCpdGuid=’0′!$ORA-00942: table or view does not exist

at intradoc.server.IdcServerManager.init(IdcServerManager.java:148)
at IdcServer.init(IdcServer.java:64)
at IdcServer.main(IdcServer.java:37)
Caused by: intradoc.data.DataException: !csDbUnableToCreateResultSet,select * from CpdLinks where dCpdGuid=’0′!$ORA-00942: table or view does not exist

at intradoc.jdbc.JdbcWorkspace.createResultSetSQL(JdbcWorkspace.java:826)
at folios.FolioInstallFilter.contentFoliosUpgrade(FolioInstallFilter.java:385)
at folios.FolioInstallFilter.doFilter(FolioInstallFilter.java:62)
at intradoc.shared.PluginFilters.filter(PluginFilters.java:92)
at intradoc.server.IdcExtendedLoader.executeFilter(IdcExtendedLoader.java:285)
at intradoc.server.IdcExtendedLoader.extraBeforeCacheLoadInit(IdcExtendedLoader.java:255)
at intradoc.server.IdcSystemLoader.loadCaches(IdcSystemLoader.java:928)
at intradoc.server.IdcServerManager.init(IdcServerManager.java:79)
… 2 more
Caused by: java.sql.SQLException: ORA-00942: table or view does not exist

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:207)
at oracle.jdbc.driver.T4CStatement.executeForDescribe(T4CStatement.java:790)
at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1037)
at oracle.jdbc.driver.T4CStatement.executeMaybeDescribe(T4CStatement.java:830)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1124)
at oracle.jdbc.driver.OracleStatement.doScrollExecuteCommon(OracleStatement.java:4051)
at oracle.jdbc.driver.OracleStatement.doScrollStmtExecuteQuery(OracleStatement.java:4191)
at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:1279)
at intradoc.jdbc.JdbcWorkspace.createResultSetSQL(JdbcWorkspace.java:802)
… 9 more

从另外一台机器看UCM系统的数据库,又找不到这个表。奇怪了,只好一个个校对,后来突然发现恢复的UCM系统启用了Folio组件,会不会是这个影响呢?在组件管理把Content Folio功能禁用,重新启动UCM服务,果然顺利启动。

解决方法:

   1. Open a connection to the content server’s database schema using SQL Developer, SQL+, etc.
   2. Delete the record in the config table that has a dName value of ContentFolios
    3.Drop all the database tables that start with Cpd if they exist

    CpdArchivedLinks
    CpdBasketLinks
    CpdChangeHistory
    CpdLinks

    4.Reinstall the ContentFolios component on the content server
    5.Restart the content server

 很多人参加完Oracle的ADF培训后,觉得照着例子做是懂了,但是真正在项目上使用ADF往往不知何入手,很多问题也不知道怎么解决,查大部头的Developer Guide总觉得很难找到解决方案。所以通常都会听到ADF太难用之类的声音。

其实在Oracle网站上本身就有很好的资源,但是对于中文用户来讲,要在Oracle的网站找到适合的资源实在是一个挑战。推荐大家使用Oracle ADF Insider Essentials,对于使用ADF开发的团队与工程师来讲,实在是不可多得的好资源,使用实例的方式来讲解如果解决实际的问题。

/etc/sysconfig/i18n
将LANG=”zh_CN.UTF-8″ 换成 LANG=”en_US.UTF-8″

装了UCM 11g的虚机,回到公司用Console怎么也起不起来,一直报 的错,尝试在EM用NodeManager去启动,更加惨,除了原来的错外,还报了一大堆类似
java.lang.ClassNotFoundException: oracle.jrf.wls.JRFStartup
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at weblogic.management.deploy.classdeployment.ClassDeploymentManager.invokeClass(ClassDeploymentManager.java:253)
at weblogic.management.deploy.classdeployment.ClassDeploymentManager.access$000(ClassDeploymentManager.java:54)
at weblogic.management.deploy.classdeployment.ClassDeploymentManager$1.run(ClassDeploymentManager.java:205)
Truncated. see log file for complete stacktrace的错误。查了下,发现是要调整nodemanager.properties的设置,使用以下步骤:
Stop All Managed Servers
Stop Node Manager
Update nodemanager.properties
set
StartScriptEnabled=true

Restart Node Manager
Restart managed Servers from WLS Console.
然后重启EM,启动UCM Server实例,竞然神奇的好了,搞不明白是啥原因。