weblogic中间件运维常见问题
背景:
工作需要经常使用到weblogic中间件产品,在维护过程中有遇见的一些常见故障问题,这里分享给大家。
问题一:密码文件报错
问题描述:
weblogic应用在启动过程中出现如下的报错内容:
# tail -f nohup.out
at weblogic.security.providers.authentication.LDAPAtnLoginModuleImpl.login(LDAPAtnLoginModuleImpl.java:261)
at com.bea.common.security.internal.service.LoginModuleWrapper$1.run(LoginModuleWrapper.java:110)
at java.security.AccessController.doPrivileged(Native Method)
at com.bea.common.security.internal.service.LoginModuleWrapper.login(LoginModuleWrapper.java:106)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Truncated. see log file for complete stacktrace
>
问题分析:
显示如上的错误,是weblogic登入的密码文件出错了,
问题解决:
解决思路:只要是修改一下密码文件就可以了
进入域的根目录文件下
$ cd /weblogic/user_projects/domains/pubdomain01/servers/pubserver01/security
$ vim boot.properties
# Generated by Configuration Wizard on Tue Apr 24 10:55:31 CST 2018 username= weblogic ---------创建时的weblogic控制台的用户, password=servyou2014 ----------创建时的weblogic控制台用户的密码,
$ cd /weblogic/user_projects/domains/sbfpubdomain01/bin
$ nohup ./startWebLogic.sh & --------执行启动
问题二:有用过root启动过weblogic服务,文件权限不一致了
问题描述:
启动weblogic的使用报错如下:
$ tail -f nohup.out
java.lang.ClassCastException: com.octetstring.vde.backend.BackendRoot cannot be cast to com.octetstring.vde.backend.standard.BackendStandard at weblogic.ldap.EmbeddedLDAP.start(EmbeddedLDAP.java:303) at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) at weblogic.work.ExecuteThread.run(ExecuteThread.java:221) >
问题分析:
报错原因:说是因为有用过root启动过weblogic服务,文件权限不一致了。
问题解决:
解决办法:将weblogic目录下的所有的子目录的所有者和所属组修改为weblogic用户就可以了。
在Weblogic用户目录下的weblogic路径下,执行下面的命令:
# chown -R weblogic:weblogic /weblogic
重新启动weblogic就可以了
问题三:调用其他服务依赖失败
问题描述:
业务办理报错如下:
[ERROR][2019/11/11 08:33:07.658][servyou.tyjrpt.common.logback.rpc.RpcLogbackAspect][org.springframework.jms.listener][sequenceid:36CF6D8519C64AEA9F44943D0C5FF0F7]调用社保核心[未知]服务 失败!响应时间:19,请求报文: ,异常:[Security:090398]Invalid Subject: principals=[weblogic, Administrators] [ERROR][2019/11/11 08:33:07.658][BaseLogAspect][org.springframework.jms.listener][sequenceid:36CF6D8519C64AEA9F44943D0C5FF0F7]调用:HdxxService.hdxxxz(..):失败! [timecost:22] 异常为SecurityException:[Security:090398]Invalid Subject: principals=[weblogic, Administrators] [ERROR][2019/11/11 08:33:07.658][BaseLogAspect][org.springframework.jms.listener][sequenceid:36CF6D8519C64AEA9F44943D0C5FF0F7]调用:HdxxFacade.hdxxxz(..):失败! [timecost:22] 异常为SecurityException:[Security:090398]Invalid Subject: principals=[weblogic, Administrators] [ERROR][2019/11/11 08:33:07.658][cn.com.servyou.tyjrpt.xj.sb.jms.DwhzhdxxJmsMDB][org.springframework.jms.listener][sequenceid:36CF6D8519C64AEA9F44943D0C5FF0F7]核定信息下载失败java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[weblogic, Administrators] at weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager.java:848) at weblogic.security.service.SecurityServiceManager.getSealedSubjectFromWire(SecurityServiceManager.java:522) at weblogic.rjvm.MsgAbbrevInputStream.getSubject(MsgAbbrevInputStream.java:357) Wrapped by: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[weblogic, Administrators] at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:237) at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:350) at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:261)
问题分析:
注:这里根据报错的信息可以确定是调用核心服务出现异常,异常是直接调用不到核心服务,
出现如上的报错,有以下几种原因:
1、核心服务异常,没有启动或者是启动异常导致;
2、该服务异常,或者是服务启动异常;
3、是该服务和核心服务之间的网络策略被改动是拒绝状态;
根据大致的这几种情况去排查,这里的问题是该服务启动有异常,其他两种都排查掉,没有问题。
问题解决:
这里时候可以检查一下启动日志就知道了
$ nohup.out