== Why is this an issue? The Spring framework's `@RestController` annotation is equivalent to using the `@Controller` and `@ResponseBody` annotations together. As such, it is redundant to add a `@ResponseBody` annotation when the class is already annotated with `@RestController`. == How to fix it Remove the `@ResponseBody` annotation from the class or method. === Code examples ==== Noncompliant code example [source,java,diff-id=1,diff-type=noncompliant] ---- @RestController public class MyController { @ResponseBody // Noncompliant, the @RestController annotation already implies @ResponseBody @RequestMapping("/hello") public String hello() { return "Hello World!"; } } ---- ==== Compliant solution [source,java,diff-id=1,diff-type=compliant] ---- @RestController public class MyController { @RequestMapping("/hello") public String hello() { return "Hello World!"; } } ---- ==== Noncompliant code example [source,java,diff-id=2,diff-type=noncompliant] ---- @RestController @ResponseBody // Noncompliant, the @RestController annotation already implies @ResponseBody public class MyController { @RequestMapping("/hello") public String hello() { return "Hello World!"; } } ---- ==== Compliant solution [source,java,diff-id=2,diff-type=compliant] ---- @RestController public class MyController { @RequestMapping("/hello") public String hello() { return "Hello World!"; } } ---- == Resources === Articles & blog posts * Spring Guides - https://spring.io/guides/gs/rest-service/[Building a RESTful Web Service] * Baeldung - https://www.baeldung.com/spring-controller-vs-restcontroller[The Spring @Controller and @RestController Annotations] * Baeldung - https://www.baeldung.com/spring-request-response-body[Spring's RequestBody and ResponseBody Annotations]