setAttribute: Non-serializable attribute 오류

세션을 설정하여 중복 로그인 체크 작업 중 발생한 이슈 입니다. 주로 웹사이트에서 세션이나 섹션에 설정하려는 시도가 연속화 가능하지 않을 때 발생합니다. 이 오류는 세션에 저장된 데이터가 JVM에서 전송되어 나중에 사용되기 위해 직렬화 역직렬화되어야 하는 경우에 특별히 문제가 있습니다.


에러 내용

java.lang.IllegalArgumentException: setAttribute: Non-serializable attribute


직렬화 가능한 인터페이스 구현

세션을 생성하려는 클래스가 Serializable인터페이스를 실체적으로 확인합니다

import java.io.Serializable;
public class MyClass implements Serializable {
    private static final long serialVersionUID = 1L;
    // Class properties and methods
}


Searializable

Serializable 인터페이스는 Java에서 객체를 직렬화할 수 있도록 하는 기능을 제공하는 인터페이스입니다. 직렬화는 객체의 상태를 바이트 스트림으로 변환하여 저장하거나 전송할 수 있도록 하는 과정입니다. 이를 통해 객체를 파일에 저장하거나 네트워크를 통해 전송한 후 나중에 다시 객체로 복원 (역직렬화)할 수 있습니다.

Leave a Comment