4

I keep seeing below error in my IntelliJ Idea, however the code works fine during execution.

Could not autowire. No beans of 'PortfolioRequestHandler' type found. less... (Ctrl+F1) 
Inspection info:Checks autowiring problems in a bean class.

Sample Code

@ActiveProfiles("test")
@RunWith(SpringRunner.class)
@DirtiesContext(classMode = DirtiesContext.ClassMode.BEFORE_EACH_TEST_METHOD)
@SpringBootTest(classes = {Application.class})
public class PortfolioRequestHandlerTest {

    @Autowired
    private PortfolioRequestHandler portfolioRequestHandler;

    ...
    ...
}

How do I get rid of this? I am using IntelliJ Idea ULTIMATE 2018.2

Jigar Naik
  • 1,946
  • 5
  • 29
  • 60
  • Make sure Spring Context is configured for the module: https://www.jetbrains.com/help/idea/spring-support.html#configure-spring-project-facet Try version from https://www.jetbrains.com/idea/download If you continue to see the error but application works as expected, report a bug at https://youtrack.jetbrains.com/issues/IDEA with a sample project. – Andrey Oct 02 '19 at 13:11

1 Answers1

8

Are you sure that your Spring beans are wired correctly and that it's an IDE problem?

  1. check if your PortfolioRequestHandler class is annotated with @Service, @Component or @Repository (bean config via component scanning)

  2. otherwise check if your bean is wired in a @Configuration annotated class -> in that case there should be a method that returns an instance of type PortfolioRequestHandler and that's annotated with @Bean

  3. try adding a configuration class (as mentioned in 2.) and add this class to your @SpringBootTest(classes = {...} annotation; see example below

@Configuration
public class CustomBeanConfig {

   @Bean
   public PortfolioRequestHandler get PortfolioRequestHandler() {
       return new PortfolioRequestHandler();
   }
}

@SpringBootTest(classes = {Application.class, CustomBeanConfig.class})

  1. have a look at this one, maybe helps: https://stackoverflow.com/a/50267869/150623