使用mail.jar发送电子邮件时获取java.lang.NoClassDefFoundError:javax / net / SocketFactory

时间:2011-04-09 08:04:32

标签: java javamail noclassdeffounderror

我的jsf web应用程序使用mail.jar和activation.jar发送电子邮件这些和其他相关的jar都在CLASSPATH中,(应用程序在tomcat中运行) 但我得到以下例外

java.lang.NoClassDefFoundError: javax/net/SocketFactory
    java.lang.ClassLoader.findBootstrapClass(Native Method)
    java.lang.ClassLoader.findBootstrapClass0(ClassLoader.java:892)
    java.lang.ClassLoader.loadClass(ClassLoader.java:302)
    java.lang.ClassLoader.loadClass(ClassLoader.java:300)
    sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    java.lang.ClassLoader.loadClass(ClassLoader.java:252)
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1302)
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
    java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
    com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1900)
    com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:638)
    javax.mail.Service.connect(Service.java:317)
    javax.mail.Service.connect(Service.java:176)
    javax.mail.Service.connect(Service.java:125)

我在我的应用程序库中添加了必需的jsse.jar(这是Java的标准jar),但问题仍然存在。我现在怀疑jre中的jsse.jar是否已损坏导致此问题。我正在使用jre 1.6.0_13。

有人可以帮我解决这个错误吗?

1 个答案:

答案 0 :(得分:0)

该类特别是JVM提供的标准类。检查JVM安装是否已损坏,文件丢失等。