AEM 6.3 中的页面激活失败

Posted

技术标签:

【中文标题】AEM 6.3 中的页面激活失败【英文标题】:Page activation failing in AEM 6.3 【发布时间】:2017-08-03 20:16:15 【问题描述】:

我正在使用 AEM 6.3 并尝试激活一些页面,但出现以下错误。它正在尝试创建页面的版本并显示“access denied”,但我使用的是 admin 帐户。

我还观察到,当我第一次激活页面时,它并没有给我这个错误。但是当我修改/编辑页面上的某些内容并再次激活它时,它给了我以下错误。

03.08.2017 16:01:56.988 INFO [10.78.76.987 [1501789967900] POST /etc/replication/treeactivation.html HTTP/1.1] com.day.cq.replication.impl.ReplicatorImpl 设置复制 选项:ReplicationOptions同步=假,修订='null', 抑制状态更新=假,抑制版本=假,过滤器=空, 聚合处理程序=空 03.08.2017 16:01:59.769 错误 [10.78.76.987 [1501789967900] POST /etc/replication/treeactivation.html HTTP/1.1] org.apache.jsp.libs.cq.replication.components.treeactivation.POST_jsp$Processor 树激活期间的错误 /content/mysite/en/latest-news/子页面 com.day.cq.replication.ReplicationException:无法创建版本 对于 /content/mysite/en/latest-news 在 com.day.cq.wcm.core.impl.VersionManagerImpl.preprocess(VersionManagerImpl.java:377) 在 com.day.cq.replication.impl.ReplicatorImpl.replicate(ReplicatorImpl.java:627) 在 org.apache.jsp.libs.cq.replication.components.treeactivation.POST_jsp$Processor.replicate(POST_jsp.java:306) 在 org.apache.jsp.libs.cq.replication.components.treeactivation.POST_jsp$Processor.process(POST_jsp.java:247) 在 org.apache.jsp.libs.cq.replication.components.treeactivation.POST_jsp$Processor.process(POST_jsp.java:281) 在 org.apache.jsp.libs.cq.replication.components.treeactivation.POST_jsp$Processor.process(POST_jsp.java:170) 在 org.apache.jsp.libs.cq.replication.components.treeactivation.POST_jsp._jspService(POST_jsp.java:519) 在 org.apache.sling.scripting.jsp.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:725) 在 org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:502) 在 org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:449) 在 org.apache.sling.scripting.jsp.JspScriptEngineFactory.callJsp(JspScriptEngineFactory.java:346) 在 org.apache.sling.scripting.jsp.JspScriptEngineFactory.access$100(JspScriptEngineFactory.java:101) 在 org.apache.sling.scripting.jsp.JspScriptEngineFactory$JspScriptEngine.eval(JspScriptEngineFactory.java:607) 在 org.apache.sling.scripting.core.impl.DefaultSlingScript.call(DefaultSlingScript.java:388) 在 org.apache.sling.scripting.core.impl.DefaultSlingScript.eval(DefaultSlingScript.java:184) 在 org.apache.sling.scripting.core.impl.DefaultSlingScript.service(DefaultSlingScript.java:491) 在 org.apache.sling.engine.impl.request.RequestData.service(RequestData.java:552) 在 org.apache.sling.engine.impl.filter.SlingComponentFilterChain.render(SlingComponentFilterChain.java:44) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:77) 在 com.day.cq.wcm.core.impl.WCMDebugFilter.doFilter(WCMDebugFilter.java:156) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.day.cq.wcm.core.impl.WCMComponentFilter.filterRootInclude(WCMComponentFilter.java:375) 在 com.day.cq.wcm.core.impl.WCMComponentFilter.doFilter(WCMComponentFilter.java:190) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.day.cq.personalization.impl.TargetComponentFilter.doFilter(TargetComponentFilter.java:96) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 org.apache.sling.engine.impl.SlingRequestProcessorImpl.processComponent(SlingRequestProcessorImpl.java:282) 在 org.apache.sling.engine.impl.filter.RequestSlingFilterChain.render(RequestSlingFilterChain.java:49) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:71) 在 com.day.cq.wcm.core.impl.warp.TimeWarpFilter.doFilter(TimeWarpFilter.java:109) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.adobe.cq.social.ugcbase.security.impl.SaferSlingPostServlet.doFilter(SaferSlingPostServlet.java:126) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.day.cq.dam.core.impl.servlet.ActivityRecordHandler.doFilter(ActivityRecordHandler.java:154) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.day.cq.dam.core.impl.assetlinkshare.AdhocAssetShareAuthHandler.doFilter(AdhocAssetShareAuthHandler.java:436) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:73) 在 com.adobe.granite.rest.impl.servlet.ApiResourceFilter.doFilter(ApiResourceFilter.java:70) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.adobe.granite.requests.logging.impl.RequestLoggerImpl.doFilter(RequestLoggerImpl.java:126) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.adobe.granite.rest.assets.impl.AssetContentDispositionFilter.doFilter(AssetContentDispositionFilter.java:96) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.adobe.granite.csrf.impl.CSRFFilter.doFilter(CSRFFilter.java:217) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 org.apache.sling.security.impl.ContentDispositionFilter.doFilter(ContentDispositionFilter.java:180) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.day.cq.wcm.core.impl.AuthoringUIModeServiceImpl.doFilter(AuthoringUIModeServiceImpl.java:367) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.day.cq.wcm.mobile.core.impl.redirect.RedirectFilter.doFilter(RedirectFilter.java:248) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 org.apache.sling.engine.impl.debug.RequestProgressTrackerLogFilter.doFilter(RequestProgressTrackerLogFilter.java:107) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.adobe.cq.social.commons.cors.CORSAuthenticationFilter.doFilter(CORSAuthenticationFilter.java:91) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.day.cq.wcm.foundation.forms.FormsHandlingServletHelper.handleFilter(FormsHandlingServletHelper.java:221) 在 com.day.cq.wcm.foundation.forms.impl.FormsHandlingServlet.doFilter(FormsHandlingServlet.java:138) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.adobe.granite.optout.impl.OptOutFilter.doFilter(OptOutFilter.java:76) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.day.cq.wcm.foundation.forms.FormsHandlingServletHelper.handleFilter(FormsHandlingServletHelper.java:221) 在 com.adobe.cq.wcm.core.components.internal.servlets.CoreFormHandlingServlet.doFilter(CoreFormHandlingServlet.java:131) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.day.cq.wcm.core.impl.WCMRequestFilter.doFilter(WCMRequestFilter.java:90) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.adobe.cq.history.impl.HistoryRequestFilter.doFilter(HistoryRequestFilter.java:122) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.adobe.cq.mcm.campaign.servlets.CampaignCopyTracker.doFilter(CampaignCopyTracker.java:100) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 org.apache.sling.rewriter.impl.RewriterFilter.doFilter(RewriterFilter.java:83) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 com.adobe.granite.httpcache.impl.InnerCacheFilter.doFilter(InnerCacheFilter.java:81) 在 com.adobe.granite.httpcache.impl.InnerCacheFilter.doFilter(InnerCacheFilter.java:60) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 org.apache.sling.i18n.impl.I18NFilter.doFilter(I18NFilter.java:138) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:73) 在 com.adobe.granite.resourceresolverhelper.impl.ResourceResolverHelperImpl.doFilter(ResourceResolverHelperImpl.java:83) 在 org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68) 在 org.apache.sling.engine.impl.SlingRequestProcessorImpl.doProcessRequest(SlingRequestProcessorImpl.java:151) 在 org.apache.sling.engine.impl.SlingMainServlet.service(SlingMainServlet.java:219) 在 org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:85) 在 org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:79) 在 com.adobe.granite.license.impl.LicenseCheckFilter.doFilter(LicenseCheckFilter.java:308) 在 org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135) 在 org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74) 在 org.apache.felix.http.sslfilter.internal.SslFilter.doFilter(SslFilter.java:96) 在 org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135) 在 org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74) 在 org.apache.sling.security.impl.ReferrerFilter.doFilter(ReferrerFilter.java:295) 在 org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135) 在 org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74) 在 org.apache.sling.i18n.impl.I18NFilter.doFilter(I18NFilter.java:138) 在 org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135) 在 org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74) 在 org.apache.sling.featureflags.impl.FeatureManager.doFilter(FeatureManager.java:116) 在 org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135) 在 org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74) 在 org.apache.sling.engine.impl.log.RequestLoggerFilter.doFilter(RequestLoggerFilter.java:72) 在 org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135) 在 org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74) 在 org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:128) 在 org.apache.felix.http.base.internal.dispatch.DispatcherServlet.service(DispatcherServlet.java:49) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:725) 在 org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812) 在 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587) 在 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221) 在 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) 在 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 在 org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215) 在 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) 在 org.eclipse.jetty.server.Server.handle(Server.java:499) 在 org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311) 在 org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) 在 org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544) 在 org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) 在 org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) 在 java.lang.Thread.run(Thread.java:745) 引起: com.day.cq.wcm.api.WCMException:无法创建版本。在 com.day.cq.wcm.core.impl.PageManagerImpl.createRevision(PageManagerImpl.java:1457) 在 com.day.cq.wcm.core.impl.PageManagerImpl.createRevision(PageManagerImpl.java:1329) 在 com.day.cq.wcm.core.impl.VersionManagerImpl.preprocess(VersionManagerImpl.java:374) ...省略了122个常见帧原因: javax.jcr.AccessDeniedException:OakAccess0000:访问被拒绝 org.apache.jackrabbit.oak.api.CommitFailedException.asRepositoryException(CommitFailedException.java:231) 在 org.apache.jackrabbit.oak.api.CommitFailedException.asRepositoryException(CommitFailedException.java:212) 在 org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.newRepositoryException(SessionDelegate.java:670) 在 org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.save(SessionDelegate.java:496) 在 org.apache.jackrabbit.oak.jcr.session.SessionImpl$8.performVoid(SessionImpl.java:419) 在 org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.performVoid(SessionDelegate.java:274) 在 org.apache.jackrabbit.oak.jcr.session.SessionImpl.save(SessionImpl.java:416) 在 com.adobe.granite.repository.impl.CRX3SessionImpl.save(CRX3SessionImpl.java:208) 在 com.day.cq.wcm.core.impl.PageManagerImpl.createRevision(PageManagerImpl.java:1395) ...省略了124个常见帧原因: org.apache.jackrabbit.oak.api.CommitFailedException:OakAccess0000: 访问被拒绝 org.apache.jackrabbit.oak.security.authorization.permission.PermissionValidator.checkPermissions(PermissionValidator.java:242) 在 org.apache.jackrabbit.oak.security.authorization.permission.PermissionValidator.propertyAdded(PermissionValidator.java:112) 在 org.apache.jackrabbit.oak.spi.commit.VisibleValidator.propertyAdded(VisibleValidator.java:83) 在 org.apache.jackrabbit.oak.spi.commit.VisibleValidator.propertyAdded(VisibleValidator.java:83) 在 org.apache.jackrabbit.oak.spi.commit.VisibleValidator.propertyAdded(VisibleValidator.java:83) 在 org.apache.jackrabbit.oak.spi.commit.VisibleValidator.propertyAdded(VisibleValidator.java:83) 在 org.apache.jackrabbit.oak.spi.commit.VisibleValidator.propertyAdded(VisibleValidator.java:83) 在 org.apache.jackrabbit.oak.spi.commit.CompositeEditor.propertyAdded(CompositeEditor.java:83) 在 org.apache.jackrabbit.oak.spi.commit.EditorDiff.propertyAdded(EditorDiff.java:82) 在 org.apache.jackrabbit.oak.segment.SegmentNodeState.compareProperties(SegmentNodeState.java:617) 在 org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:515) 在 org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148) 在 org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:415) 在 org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:608) 在 org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148) 在 org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:415) 在 org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:608) 在 org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148) 在 org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:415) 在 org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:608) 在 org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148) 在 org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:415) 在 org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:608) 在 org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148) 在 org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:489) 在 org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:608) 在 org.apache.jackrabbit.oak.spi.commit.EditorDiff.process(EditorDiff.java:52) 在 org.apache.jackrabbit.oak.spi.commit.EditorHook.processCommit(EditorHook.java:54) 在 org.apache.jackrabbit.oak.spi.commit.CompositeHook.processCommit(CompositeHook.java:61) 在 org.apache.jackrabbit.oak.segment.SegmentNodeStore$Commit.prepare(SegmentNodeStore.java:603) 在 org.apache.jackrabbit.oak.segment.SegmentNodeStore$Commit.optimisticMerge(SegmentNodeStore.java:634) 在 org.apache.jackrabbit.oak.segment.SegmentNodeStore$Commit.execute(SegmentNodeStore.java:690) 在 org.apache.jackrabbit.oak.segment.SegmentNodeStore.merge(SegmentNodeStore.java:334) 在 org.apache.jackrabbit.oak.core.MutableRoot.commit(MutableRoot.java:249) 在 org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.commit(SessionDelegate.java:347) 在 org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.save(SessionDelegate.java:494) ...省略了129个常用框架

有人知道如何解决这个问题吗?

谢谢!

【问题讨论】:

奇怪的是,您在使用管理员帐户时收到拒绝访问异常。能否请您到/useradmin 控制台检查admins 用户权限?它是否对存储库节点拥有完全权限(包括Replicate)? 是的,管理员拥有全部权限,包括在所有节点上进行复制。 从日志看来,您没有激活某个页面,而是使用了树激活功能,并且在创建页面/content/mysite/en/latest-news 的版本时失败。这个页面有什么特别的吗?管理员可能会以某种方式丢失写访问权限,此页面是否被锁定或处于工作流程中?你可以通过简单地使用发布按钮来激活其他页面吗? 【参考方案1】:

您是否使用 OOTB 复制工作流程?

如果是肯定的,那么:

    检查工作流控制台中运行工作流的状态:http://localhost:your_port/libs/cq/workflow/content/console.html。是否有任何工作流程卡住了?如果是这样,请终止它们。 手动清除队列可能是一种解决方案。您可以通过删除主题 = 复制代理名称的 Sling 作业来实现此目的。最快的方法是使用 CRXDE Lite (http://localhost:your_port/crx/de/index.jsp),然后删除节点:

/var/eventing/jobs/assigned/%INSTANCE-SLING-ID%/%REPLICATION-AGENT-FULL-ID%

例如使用默认发布代理:

/var/eventing/jobs/assigned/e23dd09d-83f1-4735-a77c-394df479214c/com.day.cq.replication.job.publish

    您是否从旧 AEM 版本迁移到 6.3?那么也许你的版本历史被破坏了:https://helpx.adobe.com/experience-manager/kb/RecoveryFromBrokenVersionVistory.html

    最后,这是 6.3 复制故障排除页面:https://docs.adobe.com/docs/en/aem/6-3/deploy/troubleshoot-rep.html

如果不是,请使用一些自定义流程步骤,检查您如何在流程步骤中检索服务用户。

【讨论】:

以上是关于AEM 6.3 中的页面激活失败的主要内容,如果未能解决你的问题,请参考以下文章

即使管理员也无法解锁 AEM 中的页面

AEM 6.3:使用 Oauth 登录

AEM 中 doFilter servlet 的调度程序白名单

无法在 AEM 新页面上拖放组件

AEM DAM 元数据用户访问

AEM中的parsys组件和响应式布局有啥区别