Custom Java AEM annotation to do validations. | Community
Skip to main content
gustavolimarey
October 19, 2022
Question

Custom Java AEM annotation to do validations.

  • October 19, 2022
  • 1 reply
  • 746 views

Hi everyone,

 

I created a custom annotation that I would like when a method annotated with it is called, it automatically calls a service also created by me.

My Servlet

@MyValidator
public void doPost(@Nonnull SlingHttpServletRequest request, @Nonnull SlingHttpServletResponse response) throws ServletException, IOException {

 

My Annotation

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface MyValidator {
}

 

My Service

@Component
@Service(RecaptchaValidateService.class)
public class ValidatorServiceImpl implements RecaptchaValidateService {

//I will need to inject other services like other AEM service
@Reference
private HttpRequestService requestService;

@Override
public void validate() {
...get first the SlingHttpServletRequest and then validate the request
if (isNotValid) throw new RuntimeException("my message")
}
}



The idea is to make a validation annotation. But I don't know how to add a listener for this annotation in OSGi.

Do you have any idea how I can do it?

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.

1 reply

arunpatidar
Community Advisor
Community Advisor
October 20, 2022