I'm new to SpringBoot. The problem I am facing with @Autowired
annotation. When I'm trying to get the autowired bean, the compiler throw NullPointerException
.
This is the service I'm using:
package com.oss.mail.service;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.integration.handler.LoggingHandler;
import org.springframework.stereotype.Service;
import com.oss.mail.dao.EmailReadingDao;
@Service
public class EmailReadingService {
Logger logger = LoggerFactory.getLogger(LoggingHandler.class);
EmailReadingDao emailReadingDao=new EmailReadingDao();
public void readEmails(){
logger.info("Called readEmail method from EmailReadingService");
logger.info("Calling readEmailDao() from EmailReadingDao");
emailReadingDao.readEmailDao();
}
}
This is how I defined my DAO:
@Configuration
public class EmailReadingDao {
Logger logger = LoggerFactory.getLogger(LoggingHandler.class);
@Autowired
private Environment env;
@Autowired
private GetEmails getEmailsUtil;
String emailHost;
String emailPort;
String emailUserName;
String emailPassword;
int NoOfEmails;
public void readEmailDao(){
logger.info("Called readEmailDao() from EmailReadingDao");
Map<String, String> emailsString=new HashMap<String, String>();
emailHost=env.getProperty("mail.pop3s.host");//Error at thir line.
emailPort=env.getProperty("mail.pop3s.port");
emailUserName=env.getProperty("mail.pop3s.username");
emailPassword=env.getProperty("mail.pop3s.password");
NoOfEmails=Integer.parseInt(env.getProperty("mail.NoOfEmails"));
And this is what I'm seeing in my logs:
2018-07-30 03:49:38 INFO o.s.i.handler.LoggingHandler - Called readEmailDao() from EmailReadingDao
Exception in thread "main" java.lang.NullPointerException
at com.oss.mail.dao.EmailReadingDao.readEmailDao(EmailReadingDao.java:36)
at com.oss.mail.service.EmailReadingService.readEmails(EmailReadingService.java:20)
at com.oss.ProductionIncidentAutomation.ProductionIncidentAutomationApplication.main(ProductionIncidentAutomationApplication.java:32)
I'm not sure why the spring is not wiring this class. Please help me in getting the resolution of this.