List.sort上的ClassCastException

时间:2016-02-16 06:24:21

标签: java sorting lambda

我有一个实体bean,我们会调用MyEntity。获得List后,我用以下内容对它们进行排序:

List<MyEntity> results = query.getResultList();
results.sort((e1, e2)->e1.getKey().getTime().compareTo(e2.getKey().getTime()));

getTime是一个很长的地方。

但是,在排序行中,我遇到以下异常:

Caused by: java.lang.ClassCastException: com.beanpackage.MyBean cannot be cast to com.beanpackage.MyBean
    at java.util.TimSort.countRunAndMakeAscending(TimSort.java:355)

告诉我它无法将MyBean转换为MyBean没有任何意义。编译代码的Java的相同版本正在运行代码,因此它不是类版本问题(至少我可以想到)。

类排序MyBean是一个位于com.beanpackage.subpackage中的SLSB,因此它位于MyBean所在的子包中。不要认为这很重要。

这是在Wildfly 9中运行的。

有没有人见过这个?这里有什么简单的东西吗?

感谢您的帮助!

0 个答案:

没有答案