當我將字節數組轉換爲InputStream時,它給出NotSerializableException異常。 (請參見下面的代碼)NotSerializableException異常轉換爲InputStream時
// return type of myBO.getAttachedFile() is byte[]
InputStream inputStream = new ByteArrayInputStream(myBO.getAttachedFile());
我已經檢查方法myBO.getAttachedFile的回報(),它是序列化。所以我的問題是爲什麼它轉換爲InputStream後不是SERIALIZE,如下面的代碼所寫。 myBO.getAttachedFile()的返回類型是byte []
要檢查myBO.getAttachedFile()的序列化,我使用了下面的代碼。它不給例外
try {
new ObjectOutputStream(new ByteArrayOutputStream()).writeObject(myBO.getAttachedFile());
} catch (Exception e) {
logger.debug("========EXCEPTION====== Object Not Serialized");
logger.debug(METHOD_NAME, e);
}
當我檢查了序列化的inputStream它給下面
try {
new ObjectOutputStream(new ByteArrayOutputStream()).writeObject(inputStream);
} catch (Exception e) {
logger.debug("========EXCEPTION====== Object Not Serialized");
logger.debug(METHOD_NAME, e);
}
您發佈的代碼無法拋出該異常,除非在您未向我們顯示的地方存在隱藏的反序列化。 'NotSerializableException異常,'不是它在標題中所說的。請準確。發佈異常,消息和堆棧跟蹤。關於序列化輸入流的部分並不合理,但它並不重要。 – EJP
你已經編輯了你的問題,但你只解決了小問題。沒有堆棧跟蹤,你不會得到答案。 – EJP