[ 
https://issues.apache.org/jira/browse/MYFACES-4592?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17698103#comment-17698103
 ] 

Volodymyr Siedlecki commented on MYFACES-4592:
----------------------------------------------

Added more stack trace as I've found a good description of what I think is 
occurring here: https://stackoverflow.com/a/28367602/11402059 

> Lambda ClassCastException with Session Persistence
> --------------------------------------------------
>
>                 Key: MYFACES-4592
>                 URL: https://issues.apache.org/jira/browse/MYFACES-4592
>             Project: MyFaces Core
>          Issue Type: Bug
>          Components: General
>    Affects Versions: 4.0.0
>            Reporter: Volodymyr Siedlecki
>            Priority: Major
>         Attachments: flash.zip
>
>
> In our setup, we have session persistence enabled (which serializes session 
> data), and, in our tests, we've discovered the following problem:
> {code:java}
> Stack Dump = java.lang.ClassCastException: cannot assign instance of 
> java.lang.invoke.SerializedLambda to field 
> org.apache.myfaces.util.lang.LRULinkedHashMap.expiredCallback of type 
> org.apache.myfaces.util.lang.SerializableConsumer in instance of 
> org.apache.myfaces.util.l
> ang.LRULinkedHashMap
>         at 
> java.base/java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(Unknown 
> Source)
>         at 
> java.base/java.io.ObjectStreamClass$FieldReflector.checkObjectFieldValueTypes(Unknown
>  Source)
>         at 
> java.base/java.io.ObjectStreamClass.checkObjFieldValueTypes(Unknown Source)
>         at 
> java.base/java.io.ObjectInputStream$FieldValues.defaultCheckFieldValues(Unknown
>  Source)
>         at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
>         at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown 
> Source)
>         at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
>         at java.base/java.io.ObjectInputStream$FieldValues.<init>(Unknown 
> Source)
>         at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
>         at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown 
> Source)
>         at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
>         at java.base/java.io.ObjectInputStream$FieldValues.<init>(Unknown 
> Source)
>         at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
>         at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown 
> Source)
>         at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
>         at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
>         at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
>         at java.base/java.util.Hashtable.readHashtable(Unknown Source)
>         at java.base/java.util.Hashtable.readObject(Unknown Source){code}
> SerializedLambda JavaDoc:
> [https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/invoke/SerializedLambda.html]
>  
> Relevant Code:
> [https://github.com/apache/myfaces/blob/myfaces-core-module-4.0.0/impl/src/main/java/org/apache/myfaces/util/lang/SerializableConsumer.java#L25]
> [https://github.com/apache/myfaces/blob/myfaces-core-module-4.0.0/impl/src/main/java/org/apache/myfaces/util/lang/LRULinkedHashMap.java#L30]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to