Я использовал Filter
вместо этого, HandlerInterceptor
работал для меня.Поэтому мой предыдущий код был
public class MyInterceptor implements Filter {
@Override
public void doFilter( ServletRequest request, ServletResponse response, FilterChain chain )
throws IOException, ServletException {
final HttpServletRequest req = (HttpServletRequest) request;
String url = req.getRequestURI();
//this was giving me /app/service/10
}
Теперь я изменил свой код на
public class MyInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle( HttpServletRequest request, HttpServletResponse response, Object handler )
throws Exception
{
String url = request.getAttribute(HandlerMapping.BEST_MATCHING_PATTERN_ATTRIBUTE);
//this gives me /app/service/{id}
}
}