一、异常描述
将OpenCms日志level配置为debug模式(/WEB-INF/classes/log4j.properties的log4j.rootLogger追加",debug"),启动系统,抛出“ERROR [lorerTypeAccess: 151] Error reading the group "Projectmanagers".org.opencms.db.CmsDbEntryNotFoundException: Error reading the group "Projectmanagers".”问题,如下所示
ERROR [lorerTypeAccess: 151] Error reading the group "Projectmanagers".@b@org.opencms.db.CmsDbEntryNotFoundException: Error reading the group "Projectmanagers".@b@ at org.opencms.db.CmsDbEntryNotFoundException.createException(CmsDbEntryNotFoundException.java:66)@b@ at org.opencms.db.CmsDbContext.throwException(CmsDbContext.java:334)@b@ at org.opencms.db.CmsDbContext.report(CmsDbContext.java:286)@b@ at org.opencms.db.CmsSecurityManager.readGroup(CmsSecurityManager.java:4286)@b@ at org.opencms.file.CmsObject.readGroup(CmsObject.java:2577)@b@ at org.opencms.workplace.explorer.CmsExplorerTypeAccess.createAccessControlList(CmsExplorerTypeAccess.java:148)@b@ at org.opencms.workplace.CmsWorkplaceManager.initExplorerTypeSettings(CmsWorkplaceManager.java:2030)@b@ at org.opencms.workplace.CmsWorkplaceManager.addExplorerTypeSettings(CmsWorkplaceManager.java:431)@b@ at org.opencms.workplace.CmsWorkplaceManager.initialize(CmsWorkplaceManager.java:1379)@b@ at org.opencms.main.OpenCmsCore.initConfiguration(OpenCmsCore.java:1371)@b@ at org.opencms.main.OpenCmsCore.initContext(OpenCmsCore.java:1461)@b@ at org.opencms.main.OpenCmsCore.upgradeRunlevel(OpenCmsCore.java:2013)@b@ at org.opencms.main.OpenCmsListener.contextInitialized(OpenCmsListener.java:85)@b@ at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4973)@b@ at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5467)@b@ at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)@b@ at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)@b@ at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)@b@ at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)@b@ at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083)@b@ at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1880)@b@ at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)@b@ at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)@b@ at java.util.concurrent.FutureTask.run(FutureTask.java:138)@b@ at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)@b@ at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)@b@ at java.lang.Thread.run(Thread.java:662)@b@Caused by: org.opencms.db.CmsDbEntryNotFoundException: Group "Projectmanagers" was not found.@b@ at org.opencms.db.generic.CmsUserDriver.readGroup(CmsUserDriver.java:1262)@b@ at org.opencms.db.CmsDriverManager.readGroup(CmsDriverManager.java:6783)@b@ at org.opencms.db.CmsSecurityManager.readGroup(CmsSecurityManager.java:4284)@b@ ... 23 more@b@ERROR [lorerTypeAccess: 151] Error reading the group "Projectmanagers".@b@org.opencms.db.CmsDbEntryNotFoundException: Error reading the group "Projectmanagers".@b@ at org.opencms.db.CmsDbEntryNotFoundException.createException(CmsDbEntryNotFoundException.java:66)@b@ at org.opencms.db.CmsDbContext.throwException(CmsDbContext.java:334)@b@ at org.opencms.db.CmsDbContext.report(CmsDbContext.java:286)@b@ at org.opencms.db.CmsSecurityManager.readGroup(CmsSecurityManager.java:4286)@b@ at org.opencms.file.CmsObject.readGroup(CmsObject.java:2577)@b@ at org.opencms.workplace.explorer.CmsExplorerTypeAccess.createAccessControlList(CmsExplorerTypeAccess.java:148)@b@ at org.opencms.workplace.CmsWorkplaceManager.initExplorerTypeSettings(CmsWorkplaceManager.java:2030)@b@ at org.opencms.workplace.CmsWorkplaceManager.initialize(CmsWorkplaceManager.java:1385)@b@ at org.opencms.main.OpenCmsCore.initConfiguration(OpenCmsCore.java:1371)@b@ at org.opencms.main.OpenCmsCore.initContext(OpenCmsCore.java:1461)@b@ at org.opencms.main.OpenCmsCore.upgradeRunlevel(OpenCmsCore.java:2013)@b@ at org.opencms.main.OpenCmsListener.contextInitialized(OpenCmsListener.java:85)@b@ at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4973)@b@ at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5467)@b@ at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)@b@ at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)@b@ at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)@b@ at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)@b@ at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083)@b@ at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1880)@b@ at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)@b@ at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)@b@ at java.util.concurrent.FutureTask.run(FutureTask.java:138)@b@ at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)@b@ at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)@b@ at java.lang.Thread.run(Thread.java:662)@b@Caused by: org.opencms.db.CmsDbEntryNotFoundException: Group "Projectmanagers" was not found.@b@ at org.opencms.db.generic.CmsUserDriver.readGroup(CmsUserDriver.java:1262)@b@ at org.opencms.db.CmsDriverManager.readGroup(CmsDriverManager.java:6783)@b@ at org.opencms.db.CmsSecurityManager.readGroup(CmsSecurityManager.java:4284)@b@ ... 22 more
二、解决步骤
1. 根据异常轨迹,找到源码代码段,如下图所示
2. 全文检索(Ctrl+H)搜索关键词“C_GROUPS_READ_BY_NAME_2”,找到对应查询配置文件query.properties,如下图
3. 如上图,找到对应表为“CMS_GROUPS”,在对应的表里面添加纪录为“Projectmanagers”的条目,如下图
4. 重启服务,异常不再出现,问题解决了