而这段代码写在JSP中没问题,可以发邮件,但现在我想把它放在BEAN中,可出了问题,不知是怎么回事,哪位大侠帮忙啊?

解决方案 »

  1.   

    ni shiy你使用
    try{}
    catch(Exception e){}
      

  2.   

    public void send()
    {
               try{ Properties props=new Properties();
    props.put("mail.smtp.host","mail.163.com");
    props.put("mail.smtp.auth","true"); Session s=Session.getInstance(props,null);
    s.setDebug(true);
    Message message=new MimeMessage(s); message.setFrom(new InternetAddress(from)); message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to, false)); message.setSubject(subject);
    message.setText(content);
    message.setSentDate(new Date()); message.saveChanges(); Transport transport=s.getTransport("smtp");
    transport.connect("smtp.163.com","[email protected]","******");
    transport.sendMessage(message,message.getAllRecipients());
    transport.close();
    }catch(Exception e){///////////}}
      

  3.   

    try一下must be caught or declared to be thrown
    这句不说的很明白么
      

  4.   

    测试一下对象from有没有东西吧!
      

  5.   

    public class MailSender{
      /**
       *
       * @param ip 邮件服务器ip(10.192.0.2)
       * @param eMail 目标邮箱
       * @param content 内容
       * @return int 0为成功,-1为不成功
       */
      public static Map sendEmail(String targetAddress,String title,
      String content,String smtpServer,String isAuth,
    String fromAddress,String password) {
      Map returnMap = new HashMap();
      try{
      Properties props=new Properties();//也可用Properties props = System.getProperties(); 
      props.put("mail.smtp.host",smtpServer);//存储发送邮件服务器的信息
      props.put("mail.smtp.auth",isAuth);//同时通过验证
      Session s=Session.getInstance(props);//根据属性新建一个邮件会话
      s.setDebug(true);  MimeMessage message=new MimeMessage(s);//由邮件会话新建一个消息对象//  设置邮件
      InternetAddress from=new InternetAddress(fromAddress);
      message.setFrom(from);//设置发件人
      InternetAddress to=new InternetAddress(targetAddress);
      message.setRecipient(MimeMessage.RecipientType.TO,to);//设置收件人,并设置其接收类型为TO
          message.setSubject(title);//设置主题
      message.setText(content);//设置信件内容
      message.setSentDate(new Date());//设置发信时间//  发送邮件
      message.saveChanges();//存储邮件信息
      Transport transport=s.getTransport("smtp");
      String user = fromAddress.substring(0,fromAddress.lastIndexOf("@"));
      System.out.println("user="+user);
      transport.connect("smtp.163.com",user,password);//以smtp方式登录邮箱
      transport.sendMessage(message,message.getAllRecipients());//发送邮件,其中第二个参数是所有
    //  已设好的收件人地址
      transport.close();  
      returnMap.put("out1","Mail Send Success");
      return returnMap;
      }catch(MessagingException e){
      System.out.println(e.toString());
      returnMap.put("out1","Mail Send failure");
        return returnMap;  }  }  /**
       * @param userid 人员id串(用逗号分割)
       * @return String 手机号码
       */  public static void mailTo(String mailAddress, String content,String cmailServerIP) {
        String serverIp = cmailServerIP;
        //Message.println(serverIp);    
    //    String numStr = ",[email protected]";
        String num[]=mailAddress.split(",");
        //Message.println(mailAddress);
        int len=num.length;
        for(int i=0;i<len;i++){
                if(num[i].indexOf("@") != -1){
                //sendEmail(serverIp,num[i],content);
                }
        }
      }
    public static void main(String[] args){
    //sendEmail("202.108.44.205",",[email protected]","hello");
    sendEmail("[email protected]","title","content","smtp.163.com"
    ,"true","[email protected]","chengzhiyang");
    }
    }
      

  6.   

    http://community.csdn.net/Expert/topic/3681/3681041.xml?temp=.6577722