自定义OAM错误页面

背景 OAM在登录出错时,会跳到OAM错误页面,如图
自定义OAM错误页面
文章图片

该页面是OAM的标准错误页面,非常的不友好,当用户面对这么一个页面时,根本不知道如何操作。下面介绍如何自定义该页面
实现

  • 下载oam-server.ear
登录OAM后台,在目录$MIDDLEWARE_HOME/Oracle_IAM1/oam/server/apps目录下找到oam-server.ear,将其下载到本地
MIDDLEWARE_HOME是中间件目录,比如/data/fmwhome/Oracle/Middleware/Oracle_IAM1/oam/server/apps
  • 修改页面
用解压软件(如7-zip等)将oam-server.ear解压到目录下,如果没有解压软件直接用jar命令也可以解压
jar -xvf oam-server.ear

解压后,会有一个ngsso-web.war文件,以同样的方法将该文件解压出来,在路径ngsso-web/pages目录下,该目录包含了OAM所有标准的页面,以jsp方式提供,其中页面defaultservererror.jsp就是那个错误页面,所以只需修改该页面即可。页面源码如下

可以将html部分代码修改如下

【自定义OAM错误页面】将该页面重定向到指定页面,之所以建议重定向而不是直接在jsp上进行修改是因为如果把页面写在jsp中,那么每次更新都需要重新部署oam-server,如果是重定向到自定义页面就比较灵活。
  • 重新打包
只需将修改后的defaultservererror.jsp文件覆盖ear中的jsp文件即可,可以直接用7-zip软件打开oam-server.ear/ngsso-web.war/pages/,然后直接将新的jsp文件拖入直接覆盖保存即可,如果没有7-zip可以用以下命令重新打包
jar -uvf ngsso-web.war pages/defaultservererror.jsp jar -uvf oam-server.ear ngsso-web.war

  • 部署
将oam-server.ear上传到服务器,覆盖原ear文件即可(!!!!一定要先备份原来的),另外需要删除所有oamserver下的tmp文件夹,位于$DOMAIN_HOME/servers/oam_server1\tmp
  • 重启
重启所有oam manager server

    推荐阅读