微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法找到所需的类javax.activation.DataHandler和javax.mail.internet.MimeMultipart附件支持已禁用

如何解决无法找到所需的类javax.activation.DataHandler和javax.mail.internet.MimeMultipart附件支持已禁用

为了解决javax.activation.DataHandler问题,您必须在类路径中添加JavaBeans Activation Framework activation.jar。

为了解决javax.mail.internet.mimeMultipart问题,您必须在类路径中添加Java Mail API mail.jar。

控制台中显示的警告消息表明上述jar不在类路径中。

解决方法

我在调用Web服务中存在的方法时遇到问题。wsdl是使用AXIS创建的。

当我尝试使用Java代码调用它时,我从服务响应中获取了空值。

我正在控制台中打印警告消息:

无法找到所需的类(javax.activation.DataHandler和javax.mail.internet.MimeMultipart)。附件支持已禁用。

在尝试解决此问题时,我在工作空间的构建路径中添加了activation.jar和mail.jar,并重新启动了服务器。

编辑:

右键单击WSDL ==> Generate CLient

然后,我得到了一个代理类,并使用它编写了调用服务方法的代码:

public class CallingWebService1 {

public static void main(String[] args) throws Exception {

    WebService1Proxy proxy1 = new WebService1Proxy();
    proxy1.setEndpoint("http://localhost:8045/WebService1/services/WebService1");

    EmployeeDetails details = proxy1.getDetails();
    System.out.println("Employee Id: " + details.getEmpId());
    System.out.println("Employee Name: " + details.getEmpName());
    System.out.println("Dept Id: " + details.getDeptId());
    System.out.println("Dept Name" + details.getDeptName());
    System.out.println("Age: " + details.getAge());
}

但是问题仍然存在:(

更多信息:

getDetails()方法正在执行数据库操作,以从Oracle数据库中获取一些记录。为了执行数据库操作,使用了class12.jar。是否与我正在使用的方法调用服务方法有关?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。