我正在使用 Java EWS API(EWS - Exchange Web 服务)从 Exchange 服务器获取电子邮件并将其存储在专有 CMS 中。我收到消息的类型是microsoft.exchange.webservices.data.EmailMessage- EWS API 提供的类。CMS API 需要ByteArrayOutputStream对象作为其方法的参数。
所以我想将EmailMessage对象转换为ByteArrayOutputStream. 我看到了这个线程并尝试了类似的方法:(下面item是类型EmailMessage)
ByteArrayOutputStream b = new ByteArrayOutputStream();
try
{
ObjectOutputStream o = new ObjectOutputStream(b);
o.writeObject((Object)item);
}
catch(IOException ioe)
{
ioe.printStackTrace();
}
但我越来越
java.io.NotSerializableException: microsoft.exchange.webservices.data.EmailMessage
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1180)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
我可以使用 格式保存这些EmailMessage对象,但是现在我无法找到将它们转换为. 那么有什么方法可以转换为或直接从to转换为..emlFileOutputStreamByteArrayOutputStreamFileOutputStreamByteArrayOutputStreamEmailMessageByteArrayOutputStream