Method method = invocation.getMethod();
    String mapping = DISCOVERER.getMapping(invocation.getTargetType(), method);
    UriComponentsBuilder builder = ControllerLinkBuilder.getBuilder().path(mapping);
    UriTemplate template = new UriTemplate(mapping);
    Map<String, Object> values = new HashMap<String, Object>();
    Iterator<String> names = template.getVariableNames().iterator();
    while (classMappingParameters.hasNext()) {
      values.put(names.next(), classMappingParameters.next());
    }
    for (BoundMethodParameter parameter : PATH_VARIABLE_ACCESSOR.getBoundParameters(invocation)) {