Struts2 struts框架重写后如何获取原始url

Struts2 struts框架重写后如何获取原始url,struts2,tomcat6,Struts2,Tomcat6,提前感谢您阅读我的问题 问题:我想在我的strut的拦截器中找到原始url 例如: 从浏览器中,假设我调用 但是这个url是一个没有重写的url 实际上,Struts框架将其重写为 所以,Scenario是 当我从浏览器中启动url时 首先,Strub的过滤器出现在图片中,它决定是否需要重写url。如果需要的话 同样,同一个支柱的过滤器被称为另一个url中的Modifyes 最后,斯道尔的拦截器出现在一张图片中。但现在当我尝试获取url时。。。我得到了修改过的网址 但是我想要原始url(它不是由

提前感谢您阅读我的问题

问题:我想在我的strut的拦截器中找到原始url

例如:

从浏览器中,假设我调用

但是这个url是一个没有重写的url

实际上,Struts框架将其重写为

所以,Scenario是

当我从浏览器中启动url时

  • 首先,Strub的过滤器出现在图片中,它决定是否需要重写url。如果需要的话
  • 同样,同一个支柱的过滤器被称为另一个url中的Modifyes
  • 最后,斯道尔的拦截器出现在一张图片中。但现在当我尝试获取url时。。。我得到了修改过的网址
  • 但是我想要原始url(它不是由struts重写的,而是从浏览器中实际调用的)

    我怎么能得到这个

    我的尝试:

    我已经创建了一个新的过滤器。。。它位于URL重写筛选器之前。并设置一些属性,如

    HttpServletRequest httpReq = (HttpServletRequest) request;
    String uri = httpReq.getRequestURI();
    httpReq.setAttribute("URLBeforeRewrite", uri);
    
    但在拦截器中,当我试图得到如下值时

    req.getAttribute("URLBeforeRewrite") 
    
    我得到了修改过的网址


    现在,我该如何解决这个问题呢?

    我得到了答案。。。req.getAttribute(“javax.servlet.forward.request_uri”)感谢大家的努力…我从这里得到了答案。。。“Struts框架”没有进行任何重写;还有别的事。在描述你的问题时,准确是很重要的。