Servlets CQ5从剪切url获取Servlet中的页面完整路径

Servlets CQ5从剪切url获取Servlet中的页面完整路径,servlets,aem,sling,Servlets,Aem,Sling,出现问题-在运行CQ的服务器上,使用IIS dispatcher使用短url访问页面。结果如下:您可以跳过url的几个部分;例如,代替site.com/en/department/unit/country/topic/page.html可以寻址site.com/country/topic/page.html 我有一个SlingAllMethodsServletservlet,它需要完整的页面路径来存储有关页面的一些数据(如访问者数量、喜好等),因为它标识页面。但是,当从带有shortenURL的

出现问题-在运行CQ的服务器上,使用IIS dispatcher使用短url访问页面。结果如下:您可以跳过url的几个部分;例如,代替
site.com/en/department/unit/country/topic/page.html
可以寻址
site.com/country/topic/page.html

我有一个
SlingAllMethodsServlet
servlet,它需要完整的页面路径来存储有关页面的一些数据(如访问者数量、喜好等),因为它标识页面。但是,当从带有shortenURL的页面调用servlet时,我可以从SlingHttpServletRequest和Resolver获得的所有信息都返回这个剪切路径,而我需要它是完整的

所以我的问题是-在这种情况下,当调度程序剪切到页面的路径时,在
SlingAllMethodsServlet
中有没有一种方法可以获得完整的页面路径?或者有没有一种方法可以从一些JS对象获取这些信息,这样我就可以作为参数传递给servlet


感谢SlingAllMethodsServlet中的

,您能不能不简单地调用
request.getResource().getPath()
-这将为您提供底层资源的未映射路径。然后您可以使用页面管理器获取页面路径。request.getResourceResolver().adapto(PageManager.class).getContainingPage(request.getResource()).getPath()