AEM JSON端点

AEM JSON端点,json,aem,sightly,Json,Aem,Sightly,我实际上是在尝试在AEM中创建一个端点,该端点将使用application/json类型显示有关编写内容的特定数据(是什么、修改日期等) 一个例子是www.example.com/content/jsonData[.json |.html],它将显示/返回{'lastModifiedDate':'','content':'} 这将是一个HTL(Javascript)组件,而不是JSP组件或SlingResource 将json.jsp添加到页面模板的根() 要从页面上的组件获取内容,请将以下内容

我实际上是在尝试在AEM中创建一个端点,该端点将使用
application/json
类型显示有关编写内容的特定数据(是什么、修改日期等)

一个例子是
www.example.com/content/jsonData[.json |.html]
,它将显示/返回
{'lastModifiedDate':'','content':'}


这将是一个HTL(Javascript)组件,而不是JSP组件或SlingResource

将json.jsp添加到页面模板的根()

要从页面上的组件获取内容,请将以下内容添加到JSP:

String path = currentPage.getPath() + "/jcr:content/<component>";
writer.key("data");
String data = resourceResolver.getResource(path).adaptTo(Node.class).getProperty(<property name>).getString();
writer.value(data);
String path=currentPage.getPath()+“/jcr:content/”;
编写器。密钥(“数据”);
String data=resourceResolver.getResource(path).Adapto(Node.class).getProperty().getString();
写值(数据);

在JSP中编写scriplets是个坏主意。您最好使用“json”选择器创建一个SlingServlet。您能提供一个关于如何实现这一点的资源吗?这是一个关于从资源中写出json的优秀资源:就编写SlingServlet而言,您可以查看Sling文档:感谢这些资源,它们看起来很有用,然而,在我的例子中,我不能编写SlingResource或java类。组件设计可以是jsp,也可以是HTML/json。这只是一个项目约束。现有的OOTB json选择器有什么问题?无论如何,您都可以编写一个自定义选择器来使用常规servlet修改JSON数据。您可以提供一个关于如何执行此操作的链接吗?