diff --git a/spring-security-oauth/src/main/java/org/baeldung/config/WebConfig.java b/spring-security-oauth/src/main/java/org/baeldung/config/WebConfig.java index fe987b8c97..ad154ed99b 100644 --- a/spring-security-oauth/src/main/java/org/baeldung/config/WebConfig.java +++ b/spring-security-oauth/src/main/java/org/baeldung/config/WebConfig.java @@ -2,10 +2,9 @@ package org.baeldung.config; import java.util.Arrays; -import org.baeldung.web.RedditController; -import org.baeldung.web.RestExceptionHandler; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.PropertySource; import org.springframework.context.support.PropertySourcesPlaceholderConfigurer; @@ -28,6 +27,7 @@ import org.springframework.web.servlet.view.InternalResourceViewResolver; @Configuration @EnableWebMvc +@ComponentScan(basePackages = { "org.baeldung.web" }) public class WebConfig extends WebMvcConfigurerAdapter { @Bean @@ -48,18 +48,6 @@ public class WebConfig extends WebMvcConfigurerAdapter { configurer.enable(); } - @Bean - public RedditController redditController(OAuth2RestTemplate redditRestTemplate) { - RedditController controller = new RedditController(); - controller.setRedditRestTemplate(redditRestTemplate); - return controller; - } - - @Bean - public RestExceptionHandler restExceptionHandler() { - return new RestExceptionHandler(); - } - public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/resources/**").addResourceLocations("/resources/"); } diff --git a/spring-security-oauth/src/main/java/org/baeldung/web/RedditController.java b/spring-security-oauth/src/main/java/org/baeldung/web/RedditController.java index 869553448b..f6fe2d241c 100644 --- a/spring-security-oauth/src/main/java/org/baeldung/web/RedditController.java +++ b/spring-security-oauth/src/main/java/org/baeldung/web/RedditController.java @@ -8,6 +8,7 @@ import java.util.Map; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.oauth2.client.OAuth2RestTemplate; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; @@ -22,12 +23,16 @@ import com.fasterxml.jackson.databind.ObjectMapper; @Controller public class RedditController { - private OAuth2RestTemplate redditRestTemplate; private final Logger LOGGER = LoggerFactory.getLogger(getClass()); + @Autowired + private OAuth2RestTemplate redditRestTemplate; + + // API + @RequestMapping("/info") - public String getInfo(Model model) { + public final String getInfo(Model model) { JsonNode node = redditRestTemplate.getForObject("https://oauth.reddit.com/api/v1/me", JsonNode.class); String name = node.get("name").asText(); model.addAttribute("info", name); @@ -35,7 +40,7 @@ public class RedditController { } @RequestMapping("/submit") - public String submit(Model model, @RequestParam Map formParams) { + public final String submit(Model model, @RequestParam Map formParams) { MultiValueMap param = new LinkedMultiValueMap(); param.add("api_type", "json"); param.add("kind", "link"); @@ -56,7 +61,7 @@ public class RedditController { } @RequestMapping("/post") - public String showSubmissionForm(Model model) { + public final String showSubmissionForm(Model model) { String needsCaptchaResult = needsCaptcha(); if (needsCaptchaResult.equalsIgnoreCase("true")) { String iden = getNewCaptcha(); @@ -67,7 +72,7 @@ public class RedditController { // === private - public List getSubreddit() throws JsonProcessingException, IOException { + List getSubreddit() throws JsonProcessingException, IOException { String result = redditRestTemplate.getForObject("https://oauth.reddit.com/subreddits/popular?limit=50", String.class); JsonNode node = new ObjectMapper().readTree(result); node = node.get("data").get("children"); @@ -108,8 +113,4 @@ public class RedditController { } } - public void setRedditRestTemplate(OAuth2RestTemplate redditRestTemplate) { - this.redditRestTemplate = redditRestTemplate; - } - } diff --git a/spring-security-oauth/src/main/java/org/baeldung/web/RestExceptionHandler.java b/spring-security-oauth/src/main/java/org/baeldung/web/RestExceptionHandler.java index 0a1c671a0b..704bca0219 100644 --- a/spring-security-oauth/src/main/java/org/baeldung/web/RestExceptionHandler.java +++ b/spring-security-oauth/src/main/java/org/baeldung/web/RestExceptionHandler.java @@ -14,9 +14,6 @@ import org.springframework.web.servlet.mvc.method.annotation.ResponseEntityExcep @ControllerAdvice public class RestExceptionHandler extends ResponseEntityExceptionHandler implements Serializable { - /** - * - */ private static final long serialVersionUID = -3861125729653781371L; public RestExceptionHandler() { @@ -39,4 +36,5 @@ public class RestExceptionHandler extends ResponseEntityExceptionHandler impleme String response = "Error Occurred : " + ex.getMessage(); return handleExceptionInternal(ex, response, new HttpHeaders(), HttpStatus.INTERNAL_SERVER_ERROR, request); } + } \ No newline at end of file