如何解析 HTL 内容
How to parse HTL content
我正在 AEM using SlingRequestProcessor
as the example available here 中加载资源。
我的 page/html 文件如下所示:
<div data-sly-use.stepPlanItem="stepPlanItemTemplate.html"
data-sly-call="${stepPlanItem.step @ step = step}"
data-sly-unwrap />
但是,当我调用 requestProcessor.processRequest(req, resp, request.getResourceResolver());
时,什么也没有发生。我得到的文件内容完全相同。未解析任何内容。
我的主要问题是:如何从 Java 代码中解析狡猾的标签?
我应该使用过滤器吗?哪一个?这是一个页面(不是 AEM 页面)只是一个 HTL 片段。
您不需要解析 HTL 文件,这是由 Sling 脚本引擎实现完成的。你永远是processing/loading资源,需要根据Sling resource resolution.
解决
假设您正在尝试加载位于 /content/myapp/mypage.html
且具有 sling:resourceType=myapp/myfile
的资源,您可以将上述代码片段放入 /apps/myapp/myfile/myfile.html
文件中,以便脚本引擎可以执行 HTL。
我正在 AEM using SlingRequestProcessor
as the example available here 中加载资源。
我的 page/html 文件如下所示:
<div data-sly-use.stepPlanItem="stepPlanItemTemplate.html"
data-sly-call="${stepPlanItem.step @ step = step}"
data-sly-unwrap />
但是,当我调用 requestProcessor.processRequest(req, resp, request.getResourceResolver());
时,什么也没有发生。我得到的文件内容完全相同。未解析任何内容。
我的主要问题是:如何从 Java 代码中解析狡猾的标签?
我应该使用过滤器吗?哪一个?这是一个页面(不是 AEM 页面)只是一个 HTL 片段。
您不需要解析 HTL 文件,这是由 Sling 脚本引擎实现完成的。你永远是processing/loading资源,需要根据Sling resource resolution.
解决假设您正在尝试加载位于 /content/myapp/mypage.html
且具有 sling:resourceType=myapp/myfile
的资源,您可以将上述代码片段放入 /apps/myapp/myfile/myfile.html
文件中,以便脚本引擎可以执行 HTL。