smtp-java maile异常 !!!

问题描述

java maile异常 !!!

求救啊!本人在本地测试、和国内的服务器测试时,发送邮件正常。公司在香洪租了个服务器,在上面布属时报错啊,求高手指教啊!代码如下:

 public class SendMailUtil {
    private static Properties props=new Properties();
    static{
        //获取文中的各参数
        InputStream is=SendMailUtil.class.getClassLoader().getResourceAsStream("MailPramps.properties");
        try {
            props.load(is);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    /**
     *
     * @param toAdd 收件人
     * @param subject 邮件标题
     * @param context 邮件内容
     * @throws MessagingException 邮件信息异常
     * @throws UnsupportedEncodingException
     */

    public static String sendMail(String toAdd,String subject,String context)  {
        String flagString = null;
        Authenticator authenticator = new Authenticator(){
            @Override
            protected PasswordAuthentication getPasswordAuthentication(){
                String user=props.getProperty("mail.user");
                String password=props.getProperty("mail.password");
                return new PasswordAuthentication(user,password);
            }

        };

//  Session mailSession=Session.getDefaultInstance(props, authenticator);
        Session mailSession=Session.getInstance(props, new Authenticator(){
            @Override
            protected PasswordAuthentication getPasswordAuthentication() {
                String user=props.getProperty("mail.user");
                String password=props.getProperty("mail.password");
                return new PasswordAuthentication(user,password);
            }
        });

//  Session mailSession=Session.getInstance(props, authenticator);

        try{
            mailSession.setDebug(true);
            MimeMessage message=new MimeMessage(mailSession) ;
            InternetAddress from=new InternetAddress(MimeUtility.encodeText("Colamark")+"<"+props.getProperty("mail.user")+">");
            message.setFrom(from);
            InternetAddress to=new InternetAddress(toAdd);
            message.setRecipient(RecipientType.TO,to);
            InternetAddress cc=new InternetAddress(MimeUtility.encodeText("Colamark")+"<"+props.getProperty("mail.user")+">");
            message.setRecipient(RecipientType.BCC,cc);
            message.setSubject(subject);
            message.setContent(context,"text/html;charset=UTF-8");
            Transport.send(message);
        }catch(Exception e){
            return "error";
        }
        return flagString;
    }

}

异常如下:

 public class SendMailUtil {
    private static Properties props=new Properties();
    static{
        //获取文中的各参数
        InputStream is=SendMailUtil.class.getClassLoader().getResourceAsStream("MailPramps.properties");
        try {
            props.load(is);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    /**
     *
     * @param toAdd 收件人
     * @param subject 邮件标题
     * @param context 邮件内容
     * @throws MessagingException 邮件信息异常
     * @throws UnsupportedEncodingException
     */

    public static String sendMail(String toAdd,String subject,String context)  {
        String flagString = null;
        Authenticator authenticator = new Authenticator(){
            @Override
            protected PasswordAuthentication getPasswordAuthentication(){
                String user=props.getProperty("mail.user");
                String password=props.getProperty("mail.password");
                return new PasswordAuthentication(user,password);
            }

        };

//  Session mailSession=Session.getDefaultInstance(props, authenticator);
        Session mailSession=Session.getInstance(props, new Authenticator(){
            @Override
            protected PasswordAuthentication getPasswordAuthentication() {
                String user=props.getProperty("mail.user");
                String password=props.getProperty("mail.password");
                return new PasswordAuthentication(user,password);
            }
        });

//  Session mailSession=Session.getInstance(props, authenticator);

        try{
            mailSession.setDebug(true);
            MimeMessage message=new MimeMessage(mailSession) ;
            InternetAddress from=new InternetAddress(MimeUtility.encodeText("Colamark")+"<"+props.getProperty("mail.user")+">");
            message.setFrom(from);
            InternetAddress to=new InternetAddress(toAdd);
            message.setRecipient(RecipientType.TO,to);
            InternetAddress cc=new InternetAddress(MimeUtility.encodeText("Colamark")+"<"+props.getProperty("mail.user")+">");
            message.setRecipient(RecipientType.BCC,cc);
            message.setSubject(subject);
            message.setContent(context,"text/html;charset=UTF-8");
            Transport.send(message);
        }catch(Exception e){
            return "error";
        }
        return flagString;
    }

}

异常如下:
250-smtp.aliyun-inc.com
250-8BITMIME
250-AUTH=PLAIN LOGIN XALIOAUTH
250-AUTH PLAIN LOGIN XALIOAUTH
250-PIPELINING
250 DSN
DEBUG SMTP: Found extension "8BITMIME", arg ""
DEBUG SMTP: Found extension "AUTH=PLAIN", arg "LOGIN XALIOAUTH"
DEBUG SMTP: Found extension "AUTH", arg "PLAIN LOGIN XALIOAUTH"
DEBUG SMTP: Found extension "PIPELINING", arg ""
DEBUG SMTP: Found extension "DSN", arg ""
DEBUG SMTP: Attempt to authenticate using mechanisms: LOGIN PLAIN DIGEST-MD5 NTLM
DEBUG SMTP: AUTH LOGIN command trace suppressed
DEBUG SMTP: AUTH LOGIN succeeded
DEBUG SMTP: use8bit false
MAIL FROM:user@colamark.cn
250 Mail Ok
RCPT TO:jingde.liu@colamark.cn
250 Rcpt Ok
RCPT TO:user@colamark.cn
DEBUG SMTP: exception reading response, THROW:
java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:168)
at com.sun.mail.util.TraceInputStream.read(TraceInputStream.java:124)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
at com.sun.mail.util.LineInputStream.readLine(LineInputStream.java:89)
at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:2182)
at com.sun.mail.smtp.SMTPTransport.rcptTo(SMTPTransport.java:1690)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:1118)
at javax.mail.Transport.send0(Transport.java:195)
at javax.mail.Transport.send(Transport.java:124)
at cn.colamark.pc.util.SendMailUtil.sendMail(SendMailUtil.java:87)
at cn.colamark.pc.action.user.RegistAction.execute(RegistAction.java:76)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java
:441)
at com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.
java:280)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
at com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflo
wInterceptor.java:165)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterce
ptor.java:87)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor
.java:252)
at org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(Ann
otationValidationInterceptor.java:68)

望高手指点啊

解决方案

是不是scoket的一端关闭了

时间: 2024-11-01 08:20:57

smtp-java maile异常 !!!的相关文章

JAVA【异常二】异常处理机制

Java中异常提供了一种识别及响应错误情况的一致性机制,有效地异常处理能使程序更加健壮.易于调试.异常之所以是一种强大的调试手段,在于其回答了以下三个问题: 什么出了错? 在哪出的错? 为什么出错? 在有效使用异常的情况下,异常类型回答了"什么"被抛出,异常堆栈跟踪回答了"在哪"抛出,异常信息回答了"为什么"会抛出.   在Java 应用程序中,异常处理机制为:抛出异常,捕捉异常. 抛出异常:当一个方法出现错误引发异常时,方法创建异常对象并交付运

Java中异常机制的研究

首先Java的异常是面向对象的.一个Java的Exception是一个描述异常情况的对象.当出现异常情况时,一个Exception对象就产生了,并放到异常的成员函数里. Java的异常处理是通过5个关键词来实现的:try,catch,throw,throws和finally.1.异常处理: 在Java语言的错误处理结构由try,catch,finally三个块组成.其中try块存放将可能发生异常的Java语言,并管理相关的异常指针:catch块紧跟在try块后面,用来激发被捕获的异常:final

Java中异常机制的深入研究

由于本文旨在探讨Java"异常机制"的深层原理,因此关于"异常"的使用方法都不做详细说明.首先看一段非常熟悉的用于打开一个文件的C程序段: FILE *fp;fp=fopen(filename,"rw");if(fp==NULL){ printf("cannot open file\n"); exit(0);} 在这段程序中,if条件语句中的一段用来处理没有找到指定文件,或者其它原因无法正确打开指定文件.可是如果遇到一个责任心

Java中“异常机制”深入研究

由于本文旨在探讨Java"异常机制"的深层原理,因此关于"异常"的使用方法都不做详细说明.首先看一段非常熟悉的用于打开一个文件的C程序段: FILE *fp; fp=fopen(filename,"rw"); if(fp==NULL){ printf("cannot open file\n"); exit(0); } 在这段程序中,if条件语句中的一段用来处理没有找到指定文件,或者其它原因无法正确打开指定文件.可是如果遇到一个

JAVA【异常一】异常体系

一.什么是异常 异常:程序在运行过程中发生由于硬件设备问题.软件设计错误等导致的程序异常事件.(在Java等面向对象的编程语言中)异常本身是一个对象,产生异常就是产生了一个异常对象.      --百度百科 二.异常体系        Java把异常当作对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类. 在Java API中已经定义了许多异常类,这些异常类分为两大类,错误Error和异常Exception.   其中异常类Exception又分为运行时异常(Ru

java泛型异常,如何解决

问题描述 java泛型异常,如何解决 public static > AnyType[] mergesort(AnyType[] a,AnyType[] b) { int i=0; int j=0; int index=0; AnyType[] tmp=(AnyType[]) new Comparable[a.length+b.length]; while(i<a.length&&j<b.length){ if(a[i].compareTo(b[j])<0) { t

java 这个异常怎么弄?

问题描述 java 这个异常怎么弄? 解决方案 要看源代码咯,找到错误的地方 解决方案二: 名字为dataSource1的bean配置有问题,你再看看 解决方案三: 数据源的配置有问题,把spring的配置文件贴出来看看 解决方案四: java foreach语法 的ConcurrentModificationException 异常 解决方案五: 找到你的dataSource1这个文件

小白求:java web 异常 处理问题详解

问题描述 小白求:java web 异常 处理问题详解 java web 项目在Dao层产生的异常 提示是在servlce层里面调用时 报nullpoint异常 导致在action层无法正常跳转 我现在 应在在那个层去处理这样的异常 若不再action层的话 我应该怎么操作 小白求大牛告知,感激不敬! 解决方案 先写放测试方法测试service层写的方法有没有对吧,那些要的数据能不能传进去,我个人觉得可能是service的方法有误 解决方案二: 在每一层打个断点,看看是哪里出错了. 解决方案三:

java web 异常求助,Myeclipse 的 Tomcat出现404错误

问题描述 java web 异常求助,Myeclipse 的 Tomcat出现404错误 求求大神们帮帮忙,过几天就要答辩了,没想到昨天突然就出现这个错误,自己一个人瞎搞了一个晚上也无济于事 解决方案 你 的图片已经看不到了.你加我qq413159383给我发过来.我给你看看 解决方案二: 看web.xml配置文件是否正确,映射的路径和servlet -class是否配置正确 解决方案三: 参考http://www.cnblogs.com/kaixin110/archive/2007/12/12