java - 将不可序列化的属性值设置到 HttpSession 中

标签 java jsf glassfish-4 serializable httpsession

部署项目时有时会出现错误,但并非每次都会出现错误。 Localbean 不工作时报错

错误信息

Warning:   JSF1063: WARNING! Setting non-serializable attribute value into HttpSession (key: localBean, value class: LocalBean).

本地bean

package com.mycompany.crm;

import java.io.Serializable;
import java.util.Locale;
import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;

@ManagedBean
@SessionScoped

public class LocalBean implements Serializable{
    public Locale locale;

    @PostConstruct
    public void init() {
        locale = FacesContext.getCurrentInstance().getViewRoot().getLocale();
    }

    public Locale getLocale() {
        return locale;
    }

    public String getLanguage() {
        return locale.getLanguage();
    }

    public void setLanguage(String language) {
        locale = new Locale(language);
        FacesContext.getCurrentInstance().getViewRoot().setLocale(locale);
    }
}

最佳答案

尝试在您的类中放置一个serialVersionUID字段,例如:

private static final long serialVersionUID = -1;

关于java - 将不可序列化的属性值设置到 HttpSession 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26919561/

相关文章:

Java switch case 菜单扫描器

jsf - 更新数据表页脚素面(facet 或 columnGroup)

java - hibernate二级缓存错误(Spring 4,Hibernate 4)

java - 配置 CMake C++/Java 项目以与 Eclipse 配合使用

java - 在同一 Activity android上使用前后摄像头

java - 如何使用 Selenium 在网站上查找带有框架的元素?

css - 如何拆分单选按钮但保持分组

jsf - 在 JSF 中执行两个操作方法

java - Websocket 客户端无法部署到 Glassfish

java - EclipseLink 修复在 Eclipse 中不可用 - Jersey POST/PUT 不起作用