У меня есть требование прочитать значение конкретного свойства bean-объекта сессионной области, используя динамический код. Ниже приведен код, в котором я получаю правильное значение в client_id_1, где client_id дает мне 0.
Бин Session Scoped:
@Component("sessionUser")
@Scope(value = "session", proxyMode = ScopedProxyMode.TARGET_CLASS)
public class SessionUser implements Serializable {
}
Код для получения значения из Bean-объекта сессионной области
try{
Class cls = SessionUser.class;
int client_id_1 = sessionUser.getClient_id();
Field sessionField = cls.getDeclaredField("client_id");
sessionField.setAccessible(true);
int client_id = sessionField.getInt(sessionUser);
System.out.println("sessionUser: " +client_id_1 + " " + client_id);
}catch(Exception ex){
}