【问题标题】:Is it possible to search for a rendition of an image based on the dimensions via QueryBuilder API是否可以通过 QueryBuilder API 根据尺寸搜索图像的再现
【发布时间】:2020-03-28 12:55:06
【问题描述】:

我想要实现的是以下。根据指定的维度和资产标题,我想找到与搜索条件相对应的所有资产演绎版。

目前,我正在使用 QueryBuilder API,因为我不是在 Java 中工作,但似乎不可能仅通过一次 AEM 调用就获得所需的再现。

搜索图像再现的最佳方法是什么?

期待你的想法!

【问题讨论】:

    标签: aem assets query-builder dam


    【解决方案1】:

    您可以使用 SQL2 JOIN 查询:

    SELECT parent.* FROM [dam:AssetContent] AS parent INNER JOIN [nt:file] AS child ON ISDESCENDANTNODE(child,parent) WHERE ISDESCENDANTNODE(parent, '/content/dam') AND parent.[cq:name]='men_5.jpg' and name(child)='cq5dam.thumbnail.48.48.png'
    

    parent 查找 name=men_5.jpg 的 dam:AssetContent 节点,child 查找 nodename=cq5dam.thumbnail.48.48.png 的相应资产下的 nt:file 节点

    【讨论】:

    • 感谢您的回复!您能否告诉我是否可以通过 HTTP API 运行此查询?
    • 2 个选项:1) 从 crxde->tools->query 运行查询;从网络选项卡中,您可以拉出 query.jsp 调用。它按预期返回 json。但这仅适用于作者。 2) 使用 sling servlet 运行查询并返回结果 -helpx.adobe.com/experience-manager/using/…
    • 可以从 Java 以外的语言使用 sling servlet 吗?
    • 哦,我明白了。你不想写java servlet。您使用 QueryBuilder API 并使用 curl 是正确的;例如:curl -s -u admin:admin GET "localhost:4502/bin/…"。问题是,它只运行 XPath 查询。您需要运行 2 个 Xpath 查询并在最后合并结果,或者尝试一些 XPath Join 查询。我不确定如何加入 2 个 xpath 查询。
    猜你喜欢
    • 2019-07-29
    • 2016-04-17
    • 1970-01-01
    • 1970-01-01
    • 2011-06-15
    • 2015-08-28
    • 1970-01-01
    • 1970-01-01
    • 2013-03-02
    相关资源
    最近更新 更多