当前位置: 首页 > 知识库问答 >
问题:

AEM 6.1-解锁页面的问题,具有解析器Factory.getServiceResourceResolver()方法

章心水
2023-03-14

在我在AEM 6.1中工作的一个项目中,我们使用“新”方法通过line resolverFactory获得有效的ResourceResolver对象。getServiceResourceResolver()。如您所知,有必要在环境中创建具有正确权限的系统用户,以便在JCR中执行某些任务。我们已经创建了一个具有管理员权限的系统用户。

附加权限:useradmin页面

此用户被分配到Apache Sling Service User Mapper Service配置中作为默认用户,因此我们不必在代码中的任何时候传递具有子服务名称的Map对象。我正在测试的页面路径 /content/test/test-1/test-folder/test-unlock-page/.附加了相关的代码。当执行page.unlock()行时,会抛出一个WCMExctive

    @Override
public void unlock(String userId, String pagePath) throws LoginException, WCMException {        

    ResourceResolver resourceResolver =resourceResolverFactory.getServiceResourceResolver(null);
    PageManager pageMgr = resourceResolver.adaptTo(PageManager.class);
    Session session = resourceResolver.adaptTo(Session.class);
    Page page = pageMgr.getPage(pagePath);

    if(!page.isLocked()) {
        log.info("Page is NOT locked, unlock operation not mandatory: " + pagePath);
    } else {
    log.info("Unlocking page on behalf of: " + userId);
    page.unlock();
}

异常原因是:

javax.jcr.lock.LockException: Not an owner of the lock /content/test/test-1/test-folder/test-unlock-page/jcr:content

我读了这个链接的留档,根据我的理解,当你为这个用户指定修改权限时,用户可以锁定(锁定),但这段话没有告诉任何关于解锁的事情:

在JCR级别,用户可以通过修改资源的属性、锁定、版本控制和nt修改来修改资源,并且他们对定义JCR:content子节点的节点拥有完全的写权限,例如cq:Page、nt:file、cq:Asset

我在想,如果有可能在其他地方分配一个权限来解锁这个系统用户,因为它似乎是不可能做到这一点与当前的特权。

谢谢你对它的任何想法。

共有2个答案

岳硕
2023-03-14

只有锁所有者可以删除锁。即使是管理员组的成员也不能解锁页面。但是,管理员用户可以使用CRX内容资源管理器删除任何页面的锁。

李胤
2023-03-14

这是不可能的。只有管理员用户和锁所有者才能移除锁。

 类似资料:
  • 本文向大家介绍MySQL死锁问题分析及解决方法实例详解,包括了MySQL死锁问题分析及解决方法实例详解的使用技巧和注意事项,需要的朋友参考一下 MySQL死锁问题是很多程序员在项目开发中常遇到的问题,现就MySQL死锁及解决方法详解如下: 1、MySQL常用存储引擎的锁机制 MyISAM和MEMORY采用表级锁(table-level locking) BDB采用页面锁(page-level lo

  • 我花了相当多的时间阅读GraphQL教程,但不幸的是,它们似乎没有涵盖足够的深度,我无法理解。我真的很感谢你对这个现实世界的例子的帮助。 在示例中,查询位于解析器对象的根;我可以让它在单级查询中正常工作。但是,当我尝试解析嵌套查询时,嵌套解析程序从未被调用。让我非常困惑的是,我发现graphql网站上没有发布的每一个教程都放在一个查询对象中,并将它们的查询嵌套在下面,而不是根级别。 考虑以下模式:

  • 我正在使用Jsoup解析短html文档,该文档包含对结果进行某些逻辑操作所需的一些自定义标记 这样地: 在这种情况下,内部内容似乎丢失了,outerHtml()方法显示如下: 但是如果“show if”标签包含一个简单的文本,比如你好,它就会像预期的那样工作。 有什么想法吗?谢谢你。

  • 我对ANTLR相对来说是新的,所以请原谅我。 但是当我试图解析下面的表达式时 我最终出现以下错误: 第1:38行:'''处的令牌识别错误 第1:42行:'''处的令牌识别错误 规则r没有方法或者它有参数 规则'r'的意思是什么?我怎么能理解问题的原因呢?任何帮助都将不胜感激!

  • 本文向大家介绍springboot无法跳转页面的问题解决方案,包括了springboot无法跳转页面的问题解决方案的使用技巧和注意事项,需要的朋友参考一下 首先我登录页面直接通过浏览器请求直接访问的,项目结构如图所示 登录页面 点击提交后,是一个ajax发送表单里面的数据,请求地址为index,会去数据库里面查询是否有这个人(后端采用mybatis去数据库查询),根据返回的结果,跳到相应的页面去,

  • 本文向大家介绍Spring集成webSocket页面访问404问题的解决方法,包括了Spring集成webSocket页面访问404问题的解决方法的使用技巧和注意事项,需要的朋友参考一下 由于工作需求,需要搭建一个平台无关的web项目,用于收集其他系统的bug和建议。考虑到跨域和后期的在线交流的扩展,决定采用webSocket,加上系统本身是基于Spring的,就照着Spring的官方文档搭建了一