Любой метод будет возвращать исходный URL, когда вы делаете пересылку (..), поэтому мое решение состоит в том, чтобы определить фильтр для хранения requestURL () в атрибуте запроса, чтобы проверить позже.Для этого в вашем web.xml напишите:
...
<filter>
<filter-name>MyFilter</filter-name>
<filter-class>my.package.CustomFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>MyFilter</filter-name>
<url-pattern>*</url-pattern>
</filter-mapping>
...
Затем в CustomFilter
class:
public class CustomFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {}
@Override
public void destroy() {}
@Override
public void doFilter(ServletRequest req, ServletResponse rsp,
FilterChain chain) throws IOException, ServletException {
req.setAttribute("OriginURL", req.getRequestURL().toString());
chain.doFilter(req, rsp);
}
}
Затем вы можете получить его везде в своем коде с помощью объекта ServletRequest с помощью:
request.getAttribute("OriginURL").toString();