2013-03-01 3 views
2

Я хочу отправить текстовое сообщение с использованием Spring Framework. Я работаю с использованием NetBeans IDE, и я добавил mail.jar, common.jar в свою папку зависимостей. Мой код выглядит следующим образом:Spring mailSender throwing nullPointerException

@Service("emailService") 
    public class EmailService { 

     @Inject 
     private MailSender mailSender; 



     @RequestMapping(method = RequestMethod.POST) 
     public void sendMail(String from, String to, String subject, String body) { 
      System.out.println("=============from:"+from); 
       System.out.println("==========to:"+to); 
       System.out.println("subject: "+subject); 
       System.out.println("body: "+body); 

      SimpleMailMessage message = new SimpleMailMessage(); 

      message.setFrom(from); 
      message.setTo(to); 
      message.setSubject(subject); 
      message.setText(body); 
      this.mailSender.send(message); 
       System.out.println("----------after sendig mail"); 

     } 
} 

я получаю NullPointerException для this.mailSender.send (сообщения);

мой applicationContext.xml выглядит следующим образом:

<!-- Required for sending mail using spring framework --> 
<context:component-scan base-package="net.codejava.spring" /> 

<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl"> 
    <property name="host" value="smtp.gmail.com" /> 
    <property name="port" value="587" /> 
    <property name="username" value="USERNAME" /> 
    <property name="password" value="PASSWRD" /> 
    <property name="javaMailProperties"> 
     <props> 
      <prop key="mail.transport.protocol">smtp</prop> 
      <prop key="mail.smtp.auth">true</prop> 
      <prop key="mail.smtp.starttls.enable">true</prop> 
     </props> 
    </property> 
</bean> 

Пожалуйста, скажите мне, как получить над ним.

+0

вы можете поделиться StackTrace –

+0

каким-то образом ваш MailSender, который вы создали в 'xml' файл не autowired и попробуйте добавить метод установки. – SRy

+0

Спасибо за ответ. Я смог его решить. Я добавил следующие строки в свой код. –

ответ