在weblogic 12c添加一个server成功后,在将server删除。重新启动AndminServer时抛出大量的 java.lang.ArrayIndexOutOfBoundsException的错误,日志报错如下代码:
at com.octetstring.vde.Entry.checkEntryFieldLength(Entry.java:785)
at com.octetstring.vde.EntryChanges.readBytes(EntryChanges.java:288)
at com.octetstring.vde.EntryChanges.(EntryChanges.java:75)
at com.octetstring.vde.replication.BackendChangeLog.getChange(BackendChangeLog.java:548)
at com.octetstring.vde.replication.Replicator.run(Replicator.java:205)
at com.octetstring.vde.replication.Replication.run(Replication.java:339)
错误分析:由于新增一个server,启动后,weblogic自动在ldap文件目录下添加了一个server文件,当我们在weblogic的后台删除这个server的时候,并没有删除掉ldap文件目录下的server文件。因此,我们新增的server并没有彻底的删除干净,在启动AndminServer的时候,它找不到我们新增的server, 所有导致了数组越界,抛出大量的java.lang.ArrayIndexOutOfBoundsException异常。
解决方法:进入servers/AndminServer/data下找到ldap文件,将其删除,再重新启动服务生成新的ldap文件就可以了。
1.先停止管理服务器AndminServer
2.备份servers/AndminServer/data下的ldap文件
3.删除ldap文件
4.再重启AndminServer,重新生成新的ldap文件就可以了