Aem 如何在CQ5中添加自定义Web控制台选项卡

我是CQ5新手,我想寻求帮助,了解如何在CQ实例中添加新的自定义控制台。如果你们能给我一个演练或参考,我可以使用。我正在尝试搜索答案,但没有找到答案。您可以自定义登录和欢迎屏幕,方法是将/libs/cq/core/content、/libs/cq/core/components、/libs/wcm等中的相关代码复制到相应的/apps节点,就像自定义普通内容处理组件一样。CQ5文档中的一些参考:

Aem cq5-live copy-如何判断页面何时为live copy并查找其父级的子级

我们的设置有各种各样的网站,其中一些是来自主站点的实时拷贝。我们正在尝试确定我们所处的页面是否为livecopy。如果是这样,试着找到它的父母和父母的孩子。这允许我们确定每个页面,然后使用我们想要的方式 使用cq是否容易实现这一点?检查页面是否为实时副本 您可以使用,可从资源解析程序进行调整: resourceResolver.adaptTo(LiveRelationshipManager.class) 它有一个方法,如果传递的资源是其他资源的活动副本,它将返回true。您可以通过传递当前组件

Aem 关于多语言网站的问题

我有几个疑问,请你澄清一下 我已经浏览了这个链接 Q1)如果我们想创建一个多语言站点,那么siteadmin工具中的语言副本可以创建从英语(例如英语)到另一种语言的现有页面副本。如果我有以下结构 /content/mysite /en /ru /de 但是这个复制页面的内容(ru,de)必须被翻译,例如使用谷歌翻译。如果我们在/content/mysite/en下有100页,那么将100页中的每一页翻译成

Aem SQL2-获取子节点属性

这似乎是一个相当简单的问题,但我已经为此绞尽脑汁好几个小时了。我有一个类似于下面的节点结构: food-group jcr:content nuts -> type=almonds meat -> beef=true fruit -> type=apples,oranges,bananas 我需要从子节点收集三种类型的属性:一种是字符串、布尔值和字符串数组。我认为下面的sql2查询可以工作并获得它们的属性,但无论出于什么

Aem CQ5查询生成器:获取没有jcr:content节点的页面列表

使用查询生成器(http://localhost:4502/libs/cq/search/content/querydebug.html),我想得到一个没有jcr:content子节点的页面列表 我尝试使用节点、项目名称等,但找不到正确的查询。谢谢你的帮助 path=/content/products type=cq:Page node=jcr:content node.operation=exists node.operation=not p.l

OSGi jar限制在CQ5/AEM组件内

通过将jar作为cq5组件的一部分并在构建时安装,是否可以将OSGi jar安装到Felix 如果您的问题是针对这一点的,则可以在构建时将其包含在内容包中。Adobe提供的也可以做到这一点。您不能限制OSGi捆绑包,以便只有一个CQ组件可以使用它。如果OSGi捆绑包导出java包,那么所有java和脚本代码都可以看到该包。这种方法需要使用package manager上传和安装一个包,对吗?我希望在作为项目构建的一部分构建组件时安装osgi jar,将jar限制为一个组件,只需将其放置在组件中,

Aem 如何以编程方式更新siteadmin中的站点

哪个javascript函数负责在site admin中重新构建站点请参见屏幕截图 在以编程方式更改某些页面属性后,我想使用它来更新站点 您可以在libs中找到SiteAdmin.js中定义的reloadPages函数。以及如何获取SiteAdmin对象?我尝试了CQ.wcm.SiteAdmin.reloadPages();但这会导致错误(CQ.wcm.SiteAdmin.reloadPages()不是函数)

Aem 如何映射URL?

我想将domain/content/myProject/home.html等页面映射到domain/home.html/content/myProject/。我有以下代码: String newpath = getResourceResolver().map(page.getPath()); 这不会改变任何事情。新路径是停留在page.getPath() 如何解决此问题?您需要在etc中创建映射。然后,资源解析程序将负责修剪路径 在AEM中创建映射定义 在AEM的标准安装中,您可以找到以下文

使用sightly(cq5&;aem)获取parsys名称

当一个组件被添加到页面时,有没有一种方法可以获取parsys名称 我在页面上有两个parsy(命名为header/footer),如果我删除同一个组件,我希望根据它被删除的位置使用不同的功能。我需要知道的是,这些信息是否可用于子组件 如果有可用的文档,我正在寻找一些文档。可以帮助您的是删除元素的路径,如果您将标题命名为parsys header,您的孩子将被删除到/content/somewebsitetree/somePage/jcr:content/header下 如果是footer,则为/

aem中的自定义组用户,未使用editor.html显示页面内容

我创建了一个自定义用户组。我已作为此自定义用户在localhost:4502实例中登录。我已向该用户授予内容的读取、删除、修改和创建权限,但它没有复制权限。尝试使用editor.html查看页面内容时,显示“内部服务器错误。无法在/libs/granite/ui/components/foundation/form/field/field.jsp中向/editor.html/content/geometricxx/en/products/square.html发出请求”。下面是堆栈跟踪 16.0

AEM 6.1:实施国家/地区下拉列表的最佳方式

执行以下操作的最佳方法是什么: 包含国家/地区的下拉列表。国家列表采用json格式,从web服务检索 根据国家选择显示或预填充状态下拉列表 这看起来是一个标准要求,但无法找到合适的解决方案 如果使用Sightly,我们现在所做的是调用json获取国家/地区列表并填充,并基于选择show STATES(美国)或Province(加拿大)进行show/Hide。但他正在寻找更好的替代品 <!-- COUNTRY --> <select class="myContactFieldSe

如何在AEM中从某个数字循环到某个数字?

在数据列表中,我可以循环遍历元素,如下例所示 数据列表:为提供的对象中的每个可枚举属性重复宿主元素的内容。但是,如果要循环前4个元素或从第8个元素循环到第10个元素,该怎么做 下面是一个简单的循环: <dl data-sly-list="${currentPage.listChildren}"> <dt>index: ${itemList.index}</dt> <dd>value: ${item.title}</dd>

AEM6.1触摸式用户界面对话框中的帮助路径

触摸界面对话框顶部有一系列按钮。我需要配置“帮助”按钮(最左侧),使其指向组件的文档。我看到helppath是我应该根据使用的属性名。但它不起作用,相反,它总是指向我们不需要的东西 这是cq:对话框 我尝试了helpPath(在经典UI中工作)和helpPath,但在触摸UI中不起作用。任何帮助都将不胜感激。谢谢 {jcr:primaryType:“nt:非结构化”,帮助路径: “/content/blah/en/aem support/events.html”, 帮助路径: “/conten

在AEM 6.1中,活动始终显示第一个摘要

我创建了一个活动,下面我创建了三个摘要(每个摘要都有不同的内容,第三个摘要是默认的)。我已经将前两个预告链接到两个不同的片段,默认值未指定给任何预告。但是每次我的页面加载时,我都会看到第一个摘要(即使没有解析客户端上下文的片段)。任何指点都将不胜感激 如果在配置了段的同一浏览器/窗口中测试段,则可能会看到此问题。在其他浏览器中打开页面或清除浏览器的本地存储(以重置clientContext),然后重试

如何在AEM中读取组权限并将其写入Excel

我们有一个要求,即我们必须读取给予组的所有权限并将其写入excel。我想知道如何阅读组权限程序。非常感谢您的帮助 谢谢, TusharAEM 6.0+(阿帕奇橡树) 许可方案在/jcr:system/rep:permissionStore下的单独分支中复制。每个可授权(用户/组)的节点在/jcr:system/rep:permissionStore/crx.default/$authId下可用。您可以简单地迭代所有权限,然后使用(例如)或通过JCR/Sling API def crawlAcls

在CQ5/AEM中设置响应头

我们需要在基于CQ5/AEM的应用程序中设置以下响应头 Http标头:帧选项集X-Frame-options:同一来源 Http头:严格传输安全严格传输安全:最大年龄=10886400;包括子域;预载 我在以前的应用程序中使用servlet过滤器拦截请求,完成了类似这些更改。类似地,我尝试在这个应用程序中使用SlingFilter。然而,在下载js、css、json文件等时,每个请求似乎都会被多次调用。请参见下面的代码片段 @SlingFilter(scope = SlingFilterScop

什么';AEM资产和AEM大坝之间的区别是什么?

什么是AEM资产?这不是OOTB安装吗?AEM DAM是否与AEM资产相同?是否需要单独安装AEM资产?资产:基本上是一个具有MIME类型的二进制文件。 DAM:Digital Asset Management,用于管理资产AEM assets是DAM的营销名称,自AEM 6.0以来,无需进一步安装/操作,即可将其安装到您的实例上,除非您愿意使用动态媒体等高级资产功能,在这种情况下,您需要遵循 即便如此,在生产系统中使用它之前,您必须检查您的许可证是否涵盖它,资产是单独出售的 最后一点需要注意的

如何使用querybuilder api aem从页面的jcr:property中提取日期加时间戳的年份

我在第viz页上有两个过滤器。年份和类别。基于此过滤器,我需要从存储库中检索页面并在页面上显示。我正在使用querbuilder api在页面列表的页面属性中搜索“年份和类别”属性来获取页面。但是,我在页面列表的页面属性中有一个日期属性,需要从中比较查询的年份筛选器。但filter=year的格式为“2017”,date=timestamp的格式为“2017-09-18T01:15:00.000+05:30”。那么,如何比较页面属性中的年份过滤器和日期,通过查询获取这些特定页面呢 代码片段 if

AEM 6.2-i18n翻译不适用于Publish env,但适用于Author

我们只在publish env上看到i18n版。它在作者环境中工作良好。问题是i18n没有加载到publish env中,因此i18翻译在AEM页面上无法工作 作者--i18n很好 发布者--错误提示-无法在此服务器上向/libs/cq/i18n/dict.en_us.json发送请求(仅供参考–我在此处以管理员用户身份登录) 到目前为止的故障排除- 已验证所有捆绑包都处于活动状态 另外,我们知道i18n不适用于publish env中的GeometricXX页面 是否有人可以提供修复此问题的指

AEM 6.2-读取AEM DAM XML并使用XMLStreamWriter流附加到另一个XML

我有生成XML的XML流代码,如下所示。代码和生成的xml如下所示。现在,我想从AEM DAM读取另一个XML文件(内容如下所示),并将其附加到使用XMLStreamWriter流生成的XML中 XML流代码如下所示 XMLOutputFactory of = XMLOutputFactory.newFactory(); XMLStreamWriter writer of.createXMLStreamWriter(slingResponse.getWriter()); stream.wr

AEM 6.3 HTL可变用途

我对AEM真的很陌生,我正在努力使用一个按钮组件。它有一个下拉列表,要求打开类型,因此可以选择“新建窗口”或“模式”。理想情况下,获取目标=“\u blank”或数据模式作为渲染的一部分 这是我的对话: 语法以下是我的解决方案: 按钮组件-配置 HTL(以前称为Sightly)使用HTML5数据属性定义标记块上的语句 此标记缺少数据属性,因此不符合HTML5 <a ... ${button.open}></a> 语句设置属性,但需要传递键值对映射对象 <a

AEM CRXDE查询小部件自定义

我需要自定义CRXDE中的查询小部件(来自工具->查询的小部件)。具体来说,我需要能够添加一个新按钮,将查询保存到某种收藏夹中,并加载它们。 以及搜索结果小部件中的第二个按钮,用于将结果导出到excel文件中。 你知道哪些节点/模板与每个小部件相关吗?我相信这个界面在设计时没有考虑覆盖。我会非常谨慎地延长它 虽然您仍在使用AEM 6.1,但最近已经做了很多工作来提高的可见性 此外,CRXDE是一种我真的不想因为覆盖层中的错误而破坏的接口。它只是一种低级的、最后的UI,我喜欢它坚如磐石 至少自AE

Aem CQ5页面中的通用组件

我的问题很基本。我正在创建一个新模板,在该模板中,我将使用DIV元素创建一个具体的结构。但在几乎7-8的DIV中,我需要用户输入数据 我可以使用什么组件/代码行让页面创建者可以编辑和自定义这些7-8 DIV 我尝试了多个段落: <cq:include path="par" resourceType="foundation/components/parsys"/> 但页面上只显示最上面的一个 对于具有多个段落,只需重命名cq:include标记中的路径值即可。同时检查每个cq:i

Aem CQ5.5订购作为OSGI组件部署的标准HTTP筛选器

在CQ5.5中,我如何订购作为OSGI组件部署的2个标准HTTP过滤器 问题是这两个过滤器必须按顺序运行,其中FilterA应先运行,然后依次运行FilterB 如何按顺序订购2个过滤器 您知道是否有任何OSGI或SCR属性,我可以使用它们来订购2个过滤器,以便一个接一个地运行 例如: 过滤A @Component @Service @org.apache.felix.scr.annotations.Properties({ @Property(name = "pattern", value =

Aem CQ5-搜索-启用同义词匹配

非常感谢您在以下方面提供的任何帮助,以及非常简单的功能。我试图在CQ5 | AEM中启用同义词匹配,我一直在使用它作为指导原则 我正在尝试创建一个同义词,并对“tablet”以及“tableau”和“Tablette”进行搜索。我创建了一个小的synonyms.properties文件,其中包含以下条目: tablet=Tablette tablet=tableau Tablette=tablet (第三行是强制性的,因为它与第一行相对应)。我还修改了worspace.xml和reposit

AEM 6对话框中字段的条件显示/隐藏

我正在用一个简单的创作对话框构建一个相对简单的AEM组件。在我的对话框顶部是一个选择字段。当此选择字段设置为特定项时,我希望对话框中的某些字段消失 我研究了基础转盘组件的实现,它使用了 CQ对话框下拉显示目标属性,这很好,但这不是我正在寻找的逻辑。这里使用的逻辑是: 如果选择值等于X,则显示此字段 鉴于我正在努力实施: 如果选择值等于X、Y或Z,则隐藏此字段,否则显示它 其他人在对话中实现这种逻辑有困难吗 提前谢谢你 Dave对于TouchUI对话框,实际上没有在ExtJS框架中大量使用的插件注

Aem 如何根据adobe sitecatalyst跟踪/报告的数据显示活动?

我们正在平面HTML文件上实现SiteCatalyst。我们需要根据分析报告的数据显示活动。e、 g.有一个表单有多个字段。如果用户尚未填写表单,我们将跟踪此事件并将其报告给omniture。现在,如果他没有完全填写表格就按下后退按钮,我们需要向他展示一些活动/优惠。当他按下提交按钮时也会发生同样的情况,但这次的活动将有所不同。这能实现吗?我们能把sitecatalyst和竞选活动结合起来吗 我知道反之亦然。我们可以跟踪活动并报告活动id。但是否有任何方法可以显示基于分析数据的报价。这也是实时的

AEM6-图像组件-I';我无法将图像渲染为背景

我使用的是吊索组件/libs/wcm/foundation/components/image 我需要使用渲染图像作为css背景 <img src="${image.src} /> -> OK: works <div style="background-image: url('${image.src}')">my text</div> -> KO: does not work. ->正常:正常 我的文字->柯:不起作用。 结果是my tex

Aem 如何在HTML属性的代码中添加条件逻辑

我尝试过搜索,但不知何故,我无法绕开思路,思考我需要在html元素中添加什么动态标记,使用sightly代码。 不确定这是否是一个好的做法,但想问问。 现在我知道了如何将cssclass应用于href中的class属性。但是如果我想在href中注入整个属性“class='one'”,该怎么办 这是可以做到的。我知道我可以做类似的事情 <a href="${properties['jcr:titleurl']}" class="${properties.openinnewwindow ? '

Aem 吊索运行模式使用?

sling.properties文件中sling运行模式属性的用途是什么 我有一个osgi felix捆绑包,通过aem cq5 package manager安装在aem管理捆绑包控制台上 ** 其中一个捆绑服务的配置属性不可用 除非我在cq5/config/sling.properties文件中放入以下行。 sling.run.modes=author,sandbox为什么会这样?重要的是什么 运行模式 ** 谢谢,, Sri运行模式允许您为特定目的调整AEM实例;例如,作者或发布、测试、开

如何通过从外部系统传递值在AEM中构造客户端上下文?

有没有一种方法可以通过使用外部网站传递的值来构建AEM中的客户端上下文?外部网站发送用户信息,如IP地址、页面数据、地理位置等。我想在不使用CQ_Analytics.ClientContextMgr.init的情况下构建ClientContext JSON,因为信息来自外部系统 例如:我们知道网站访问者的位置。我们希望将此值传递给AEM,并设置客户端上下文,以便能够获取此位置的目标内容 我们的最终目标是得到类似的东西(但我们正在努力实现这一点,而不是自己构建JSON): CQ_Analytics

HTL Maven插件在AEM 6.2中不起作用

我想使用htl maven插件来验证htl语法。 我使用的插件如下所示: <plugin> <groupId>org.apache.sling</groupId> <artifactId>htl-maven-plugin</artifactId> <version>1.0.6</version>

如何在AEM中限制模板级别的组件

是否有任何方法限制模板级别的组件。 例如,我有三个模板:- 模板1,模板2,模板3。 共有5个组件。 组1,组2,组3,组4,组5 现在在模板1中,我想显示组件1、组件2、组件3。在模板2和模板3中,我只想显示组件4和组件5 我已尝试通过在模板上添加多字符串属性名称“component”来实现这一点,如下链接所示:- 但却无法做到这一点。有人能帮忙吗 提前感谢您可以设置限制模板上组件使用的自定义设计文件。您可以设置限制模板上组件使用的自定义设计文件 > I have try to ach

如何使用AEM 6.1在我的项目中创建Emulator选项卡

嗨,朋友们,我刚刚开始学习AEM,我试图在我的项目中创建一个模拟器,但是emulator选项卡不会出现。请您帮助我如何在我的项目中创建emulator选项卡,为com.day.cq.wcm.mobile.core.impl.MobileEmulatorProvider创建OSGI配置,并添加一个模板列表,为其显示emulator。控制此操作的属性是mobile.resourceTypes 参考

如何访问sightly aem 6.2中的地图列表

目前,我需要从列表中访问Map的元素。请参阅下面的示例代码片段 List<Map> listOfMap = new Hash(); Map hmap1 = new HashMap(); hmap1.put("name","Rob"); hamp1.put("class","I"); Map hmap2 = new HashMap(); hmap2.put("subjects","{subject1:Maths, subject2:Englsih}"); listOfMap.add

Aem CQ5中的激活挂起

我已经在CQ5的GeometricXX站点中创建了一个测试页面。我可以很好地看到4502端口作者环境的页面。但是,当我在4503端口发布环境中激活页面以查看它时,我总是在控制台上看到页面前面的黄色图标,该图标在悬停状态下显示“激活待定”。1在队列中' 是否附加了一些工作流?如果是这样的话,我怎样才能检查它,也许现在就杀了它?还是有其他原因?默认复制队列设置指向localhost:4503。如果您的发布实例与常见的author实例不在同一台计算机上,则需要更改设置以指向有效的发布实例。配置有效的发

Aem jcr:primaryType和jcr:mixintype之间有什么区别?

我只是想知道jcr:primaryType和jcr:mixinTypes之间有什么区别,以及为什么要使用jcr:mixinTypes?这意味着什么?如果您在crx中选中/content/dam文件夹,它会将jcr:primaryType属性值显示为sling:OrderedFolder,将jcr:mixinTypes显示为mix:lockable,rep:accesscontroller,其中jcr:primaryType表示这是sling文件夹,但为什么是mixin类型。我也阅读了这些文档,但

CQ5/AEM-某些链接未重写

我们在发布实例上遇到与URL不一致的问题。某些链接正在删除/content/project/而其他链接未删除 已创建/etc/map,除这些链接外,它似乎正在按预期工作 重写的位置是OOTB文本组件中的链接的示例。 只需突出显示文本并在RTE中使用超链接。 发布时的输出HTML将按照所需的方式完成 一个没有被重写的链接来自一个组件,在它的对话框中,我们有一个在jsp中引用的richtext xtype <cq:text property="description"> 但是,这

AEM6.0自适应表单作为组件

是否有人成功创建了自适应表单作为可以进入AEM页面的组件?OOTB,表单是它自己的页面模板。想知道是否有忍者做到了这一点 因此,我们最终创建了一个容器组件,该组件具有一个可配置的路径,可以在页面上包含所需的自适应表单 <div> <cq:include path="${properties.path}/jcr:content/guideContainer" resourceType="fd/af/components/guideContainer"/> <

nt:文件夹、sling:文件夹和;吊索:AEM中的orderedfolder?

我想知道AEM/CQ中的nt:folder,sling:folder和sling:orderedfolder之间的区别是什么 在实施过程中,每种情况下使用哪种方法? nt:folder可以用作JCR中的“普通”文件夹节点 使用sling:folder允许使用其sling:resourceType解释文件夹子项-例如,如果您在/etc/designs/foo/bar处有一个节点“bar”,将“foo”的资源类型设置为sling:folder允许您通过脚本使用其资源类型解析bar(就像组件一样),但

触摸式用户界面与AEM中的经典用户界面

我们如何检查Adobe Experience Manager/CQ5中的html页面是在触摸模式还是经典模式下打开的?您可以向/libs/wcm/foundation/components/utils/AuthoringUtils.js添加依赖项,然后调用AuthoringUtils.isTouch和AuthoringUtils.isClassic检查它当前是否处于触摸模式或者经典模式。例如,您的JSUSEAPI如下所示 "use strict"; use(["/libs/wcm/founda

Aem ResourceResolverFactory服务引用从计划程序作业失败

我们正在编写一些调度程序作业。作为一个简单的模式,我编写了一个调度程序类来管理所有的cron调度,并且工人作业在单独的类中编写 BundleContext bundleContext = FrameworkUtil.getBundle(ResourceResolverFactory.class).getBundleContext(); ResourceResolverFactory factory = (ResourceResolverFactory) bundleContext.getServ

AEM 6+;-Adobe sling登录页面不应向用户显示会话超时的位置。我可以用可用的配置组件来完成吗?

会话超时时,如何重定向到自定义页面而不是sling登录页面? 是否可以从可用的配置组件使用任何配置? 或者我应该在代码中处理此问题?您可以通过设置auth.loginselector.defaultloginpage通过com.day.cq.auth.impl.LoginSelectorHandler来配置登录页面的位置 如果你需要做更复杂的事情,我会考虑做一个决定

Aem 如何在Junit测试用例中测试JcrPackageManager中的汇编api

我正在使用assemble(JcrPackage-package,ProgressTrackerListener-listener)API在JcrPackageManager类中为AEM 6.0中的内容备份服务编写测试用例。如何在JUnit测试用例中测试包是否已组装?如果您的单元测试是在AEM环境中执行的(1),您可以检查包是否存在于预期的存储库路径(/etc/packages/GROUP/package)中,以及大小是否大于0(jcrPackage.getSize()) 请注意,这将不适用于

AEM SlingServlet can的doPost方法';不能调用-sling解析器默认获取

我正在使用AEM版本6.2,我需要创建一个连接到后端系统并调用restful服务的servlet。出于安全原因,这必须使用doPost方法而不是doGet来完成。我已经能够在AEM中注册基于Sling的servlet,但是,我无法调用对servlet的POST请求。我已经使用resourceTypes和path注册了@SlingServlet注释,但是doPost并不是只被称为doGet。我知道默认调用是从服务器调用doGet,但我已经将方法指定为POST package com.dash.de

AEM Stop命令不适用于发布实例

我在AWS Ubuntu机器上安装了AEM实例。不确定为什么停止命令不适用于发布实例。例如,对于作者来说,它工作得很好。我们已经在更改的端口(5054)上配置了它。有人能告诉我我是否遗漏了什么吗?以下是运行stop命令时显示错误消息的屏幕截图: 如果未使用start脚本启动AEM实例,则无法使用stop脚本停止AEM实例 如果您查看脚本,您将看到: startscript创建一个文件conf/cq.pid,该文件具有java pid stop脚本查找该文件并尝试停止实例,然后删除该文件 因此,

AEM轻微-如何调用名称存储在变量中的java方法-表达式中的表达式无法正常工作

很明显,我已经初始化了sling模型类。现在,我想从该类调用该方法。但方法名是从某个变量读取的,基本上我是从其他位置读取方法名的。当我使用这个变量时,它不起作用。我知道Sighly不允许表达式中包含表达式,所以我想知道是否有其他方法可以满足这一需求 <sly data-sly-use.detailsModel="org.svc.core.model.DetailsModel"/> ${detailsModel.{methodNameVariable}}-如果从某

  1    2   3   4   5   6  ... 下一页 最后一页 共 17 页