weblogic启动节点服务java.lang.ClassCastException:com.octestring.vde.backend.BackendRoot cannot be cast to com.octestring.vde.backend.standard.BackendStandard类型转换异常

weblogic启动节点服务器报错,java.lang.ClassCastException:com.octestring.vde.backend.BackendRoot cannot be cast to com.octestring.vde.backend.standard.BackendStandard类型转换异常,导致初始化application失败。

具体错误如下图

 

其实从错误堆栈里看不出来啥的,重点在第一个图的上部分,已用红线标出

再截出来仔细看看。很明显,说的是EmbeddedLDAP.tran这个文件打开失败了,原因是Permission denied 权限不够。以及下面的红线处,标的是一个文件夹路径,data下的ldap下的backup文件夹。

所以我们进去看看这两个地方。

 

我们进入backup这个目录

 

发现它下面的文件的创建者和组都是root用户,因为我们现在使用的是非root用户启动的weblogic(用户为root的话,需要的权限太高了,只有root能有权限启动)。同样EmbeddedLDAP.tran这个文件也是这个原因,不再截图。

之所以会变成root用户,是因为之前切换到root用户启动了weblogic。

解决办法:

1、先登录到root用户,停掉weblogic服务。

2、修改这些文件的拥有者和组。(怎么改?chown 用户名 文件名。chgrp 用户名 文件名。backup文件好几个,快速改可以用-R参数修改文件夹下的所有文件及文件夹,chown -R 用户名 文件夹。chgrp -R 用户名 文件夹)

3、修改完后,切回普通用户,再启动即可。

 

posted @ 2019-10-29 09:58  问北  阅读(1213)  评论(0编辑  收藏  举报