一个java mail 发送邮件的类,用main方法调试,发送没问题,在servlet中调用该类,出错如下java.lang.NoClassDefFoundError: javax/net/ssl/SSLSocket
com.sun.mail.util.SocketFetcher.configureSSLSocket(SocketFetcher.java:324)
com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:201)
com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1359)
com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:412)
javax.mail.Service.connect(Service.java:310)
javax.mail.Service.connect(Service.java:169)
javax.mail.Service.connect(Service.java:118)
javax.mail.Transport.send0(Transport.java:188)
javax.mail.Transport.send(Transport.java:118)
com.universal.mail.SendMail.tosend(SendMail.java:200)
com.universal.servlet.PinfoServlet.doGet(PinfoServlet.java:354)
com.universal.servlet.PinfoServlet.doPost(PinfoServlet.java:368)
javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)根据字面去判断,少类,冲突什么的已经做了检查,没发现原因,更郁闷的是,开始发送成功过几次,后来就莫名不行了,没改动过相关代码。往高人指教。

解决方案 »

  1.   

    用的都是同一个公司内部邮件服务器Mdaemon,我在想有什么理由servlet中使用就出这个错,但之前成功过几次。
    什么jar 放入CLASSPATH也没用
      

  2.   

    http://blog.csdn.net/defonds/archive/2009/04/01/4041680.aspx
    关于javamail介绍的很详细,配有源码说明
      

  3.   

    servlet路径没问题的,可以找到,发送邮件代码就两行,
    写了个简单的if分支测试mail发送也是一样错误,是在吃不消,关键是servlet与类里的发送有什么区别,好象问题在于连接上
      

  4.   

    搞定了,我又可以自己给自己分了,看来eclipse设置中的boot classpath真不是个东西,郁闷,没加的时候也发送成功过,总之这eclipse太怪了