程序如下:
package com.open.quartz;
import org.springframework.mail.MailException;
import org.springframework.mail.MailSender;
import org.springframework.mail.SimpleMailMessage;
public class MailService {
    private MailSender mailSender;
    private SimpleMailMessage mailMessage;// email template
    public void sendMail() {
        System.out.println("send email");
        SimpleMailMessage msg=new SimpleMailMessage(this.mailMessage);
        msg.setText("this is a test mail");
        try {
            mailSender.send(msg);
        } catch (MailException e) {
            e.printStackTrace();
        }
        System.out.println("success");
    }
   //get,set方法 
}web.xml添加:
<listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>WEB-INF下applicationContext.xml文件增加bean如下:
    <bean id="mailSender"
        class="org.springframework.mail.javamail.JavaMailSenderImpl">
        <property name="host" value="smtp.mail.yahoo.cn"/>
            <!-- provide email account and password-->
        <property name="username" value="email用户名"/>
        <property name="password" value="email密码"/>
        <property name="javaMailProperties">
            <props>
                <prop key="mail.smtp.auth">true</prop>
            </props>
        </property>
    </bean>
    <!--one email template-->
    <bean id="mailMessage" class="org.springframework.mail.SimpleMailMessage">
        <property name="to" value="我的yahoo的email帐号"/>
        <property name="from" value="我的email帐号"/>
        <property name="subject" value="test"/>
    </bean>
        <bean id="ms" class="com.open.quartz.MailService" autowire="byName"/>
    <bean id="reportJob"
        class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
        <property name="targetObject" ref="ms"/>
        <property name="targetMethod" value="sendMail"/>
    </bean>
       
    <bean id="simpleTrigger"
        class="org.springframework.scheduling.quartz.SimpleTriggerBean">
        <property name="jobDetail" ref="reportJob"/>
        <property name="startDelay" value="1"/>   
        <property name="repeatInterval" value="100000000"/> 
    </bean>    <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <property name="triggers">
            <list>
                <ref bean="simpleTrigger"/>
            </list>
        </property>
    </bean>部署应用到jboss后,启动jboss出现以下错误:22:31:22,735 ERROR [STDERR] org.springframework.mail.MailSendException: Mail server connection failed; nested exception is javax.mail.MessagingException: Could not connect to SMTP host: smtp.mail.yahoo.cn, port: 25;
  nested exception is:
java.net.ConnectException: Connection timed out: connect
22:31:22,735 ERROR [STDERR] javax.mail.MessagingException: Could not connect to SMTP host: smtp.mail.yahoo.cn, port: 25;
  nested exception is:
java.net.ConnectException: Connection timed out: connect
22:31:22,735 ERROR [STDERR]  at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1008)
22:31:22,735 ERROR [STDERR]  at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:197)
22:31:22,735 ERROR [STDERR]  at javax.mail.Service.connect(Service.java:233)
22:31:22,735 ERROR [STDERR]  at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:373)
22:31:22,735 ERROR [STDERR]  at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:291)
22:31:22,735 ERROR [STDERR]  at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:277)
22:31:22,735 ERROR [STDERR]  at com.open.quartz.MailService.sendMail(MailService.java:14)
22:31:22,735 ERROR [STDERR]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
22:31:22,735 ERROR [STDERR]  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
22:31:22,735 ERROR [STDERR]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
22:31:22,735 ERROR [STDERR]  at java.lang.reflect.Method.invoke(Method.java:585)
22:31:22,735 ERROR [STDERR]  at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:248)
22:31:22,735 ERROR [STDERR]  at org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean$MethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:165)
22:31:22,735 ERROR [STDERR]  at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:90)
22:31:22,735 ERROR [STDERR]  at org.quartz.core.JobRunShell.run(JobRunShell.java:203)
22:31:22,735 ERROR [STDERR]  at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:520)
22:31:22,735 INFO  [STDOUT] success