[英]java.io.NotSerializableException: org.apache.storm.spout.SpoutOutputCollector
[英]java.io.NotSerializableException: org.apache.catalina.session.StandardSessionFacade
部署Web應用程序時,我看到此錯誤消息
com.sun.faces.application.view.FaceletViewHandlingStrategy handleRenderException
SEVERE: Error Rendering View[/qtl.xhtml]
java.io.NotSerializableException: org.apache.catalina.session.StandardSessionFacade
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1164)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:330)
at java.util.HashMap.writeObject(HashMap.java:1001)
...
我研究了這個錯誤,可能是因為我嘗試序列化不可序列化的屬性。 所以我有一個ApplicationScoped
托管bean,如下所示
@ManagedBean
@ApplicationScoped
public class ApplicationBean implements Serializable {
private Map<String, HttpSession> logins;
...
}
Map<String, HttpSession> logins
可以序列化嗎?
雄貓7
HttpSession
確實不可序列化。 畢竟,應用程序范圍的bean也不應該可序列化。 從應用程序范圍的bean類中刪除implements Serializable
,並且不要將其作為會話或視圖范圍的bean的托管屬性注入。 而是將其僅注入到請求范圍的Bean中,或從應用程序映射中獲取。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.