Аспект @annotation(PutMapping) не работает
У меня есть следующий код в моем классе аспекта.
@Pointcut("execution(* com.api.webservice.controller.*.*(..)) " +
"&& (@annotation(org.springframework.web.bind.annotation.PostMapping) || @annotation(org.springframework.web.bind.annotation.PutMapping) || @annotation(org.springframework.web.bind.annotation.DeleteMapping))")
public void pointCut() {}
@Around("pointCut()")
public Object handleMethod(ProceedingJoinPoint pjp) throws Throwable {
......
}
"PostMapping"
а также "DeleteMapping"
оба работали, как и ожидалось (handleMethod() был нажат). Но "PutMapping"
Кажется, не работает, потому что handleMethod () не был активирован, когда я отправил спокойный вызов Put через своего почтальона. Мой метод прототип
@PostMapping
@ResponseStatus(value = HttpStatus.CREATED)
public Entity create(@Valid @RequestBody Entity entity) {
...
}
@PutMapping("/{id}")
public Entity update(@PathVariable String id, @Valid @RequestBody Entity entity) {
...
}
@DeleteMapping("/{id}")
@ResponseStatus(value = HttpStatus.NO_CONTENT)
public void deleteEntityById(@PathVariable String id) {
...
}
Есть идеи?