Java AOP JoinPoint не получает имена параметров


Я использую Java Spring Mvc и Spring AOP, чтобы найти имена параметров от пользователя.
У меня есть контроллер, который получает параметры от пользователя и вызывает сервис.
У меня есть аспект, который работает до службы.
Аспект должен проверить, существуют ли параметры username и apiKey.
Вот мой код:

Контроллер:

@RequestMapping(method = RequestMethod.POST, produces=MediaType.APPLICATION_JSON_VALUE)
public @ResponseBody String getDomainWithFoundIn(@RequestParam (value="domain") String domain, @RequestParam (value="user") String user, @RequestParam (value="apiKey") String apiKey) throws JsonGenerationException, JsonMappingException, IOException {
    return domainService.getDomainDataWithFoundIn(domain, user, apiKey);
}

Интерфейс доменного сервиса:

public interface IDomainService {
    public String getDomainDataWithFoundIn(String domainStr, String user, String apiKey);
}

DomainService:

@Override
@ApiAuthentication
public String getDomainDataWithFoundIn(String domainStr, String user, String apiKey) {
//Do stuff here
}

И мой класс АОП:

@Component
@Aspect
public class AuthAspect {
@Before("@annotation(apiAuthentication)") 
public void printIt (JoinPoint joinPoint, ApiAuthentication apiAuthentication) throws NoAuthenticationParametersException, UserWasNotFoundException {
        final MethodSignature signature = (MethodSignature) joinPoint.getSignature();
        final String[] parameterNames = signature.getParameterNames();
        **//parameterNames is null here.**
}

В этом случае я ожидаю получить в моем аспекте имена параметров «домен», «пользователь» и «apiKey».
Есть идеи, что мне здесь не хватает?
Спасибо,
Или же.

Ответы на вопрос(3)

Ваш ответ на вопрос