首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用HTL/Sightly访问后缀?

如何使用HTL/Sightly访问后缀?
EN

Stack Overflow用户
提问于 2018-05-09 01:10:11
回答 1查看 1.7K关注 0票数 1

TLDR:创建一个名为"mypage.html“的新的AEM页面。在URL中提供后缀。将此后缀传递给Sling servlet。后缀充当URL参数。

样例所需网址:http://localhost:4502/mypage.html/john/smith

因此,我创建了一个servlet (使用本指南:http://www.aemcq5tutorials.com/tutorials/sling-servlet-in-aem/),它可以读取后缀。

代码语言:javascript
复制
@SuppressWarnings("serial")
@SlingServlet(paths="geometrixx/components/hompepage", selectors="name", extensions="html",methods="GET", metatype=true)
public class StaffProfileServlet extends SlingAllMethodsServlet {
    private static final Logger log = LoggerFactory.getLogger(CourseBookmarkServlet.class);

    @Override
    protected void doGet(final SlingHttpServletRequest request,
                         final SlingHttpServletResponse response) throws ServletException, IOException {
        RequestPathInfo rpi = request.getRequestPathInfo();
        String[] suffixes = rpi.getSuffix().split("/");

如果我通过http://localhost:4502/content/geometrixx/en.name.html/first/last访问它,它就能正常工作。

接下来我要做的是创建一个名为"mypage.html“的新页面,并首先和最后作为后缀提供。

mypage将在格式正确的页面中显示与此人相关的信息。上面有代码的,我得到的只有JSON响应.

我认为,为了实现我的目标,需要作出一些假设/改变:

  1. 我将使用路径和请求参数(即在servlet代码上使用request.getParameter("myparameter") )。
  2. 我将使用AJAX访问servlet。

如果我的假设是正确的,我如何访问HTL/Sightly的后缀?我知道我可以通过${request.requestURI}甚至Javascript获得URI。使用这个值,我可以在AJAX调用中使用这个值。

但这是AEM/Sling的做法吗?或者有更好的方法来做我想做的事?

非常感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-09 05:09:25

您可以使用HTL的RequestPathInfo接口访问后缀. ${request.requestPathInfo.suffix}

通过HTL -> 这里访问全局对象。

通过请求对象-> 这里访问的方法。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50244161

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档