2013-03-01 72 views
2

我想發送一個純文本電子郵件使用春天框架。我正在使用netbeans IDE,並且在我的依賴關係文件夾中添加了mail.jar,common.jar。我的代碼如下:春天mailSender拋出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(message);

我的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

可以共享堆棧跟蹤 – 2013-03-01 06:05:54

+0

不知何故沒有被自動連接您在'xml'文件中創建您的mailsender並嘗試添加setter方法。 – SRy 2013-03-01 07:06:39

+0

感謝您的回覆。我已經能夠解決它。我在我的代碼中添加了follwoing行 – 2013-03-01 07:12:38

回答

0

只是改變@Inject@Autowired

相關問題