获取错误java.io.NotSerializableException:org.apache.catalina.session.StandardSessionFacade

时间:2011-12-12 10:04:32

标签: jsf-2

我收到错误

  

java.io.NotSerializableException:org.apache.catalina.session.StandardSessionFacade

如何解决此错误?我在viewScope中使用managedBeans。还使用过滤器创建会话。造成这种异常的原因是什么?

由于

1 个答案:

答案 0 :(得分:1)

您已将HttpSession引用为某些JSF托管bean类的属性。这是一个非常糟糕的设计。删除它并更改您的方法,以便从线程局部范围中的FacesContext获取它。但毕竟,这仍然是一种气味,在正确设计的JSF托管bean类中,您应该拥有import javax.servlet...的任何一行。如何正确解决这个问题取决于具体的功能要求,这一要求根本不在您的问题中。我的第一个猜测是你实际上需要一个会话范围的托管bean,然后由@ManagedProperty注入。