问题标签 [lambdaj]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 简单选择上的 lambdaJ 和 ClassCastException
我的想法用完了,谷歌也没有帮助。用例似乎微不足道,但因 ClassCastException 而失败。我不知道我做错了什么。有一个简单的方法可以返回匹配给定类别的第一个元素,看看。
执行给出了堆栈的顶部:
我在使用 lambdaJ 对 hibernate 的持久集合进行操作时遇到了同样的问题。我放弃了假设已经是代理的代理对象(集合中的实体)可能存在一些问题。看来我错了,因为类别和所有继承的类都是作为结果转换器传递给休眠的 pojos。
这种行为的原因可能是什么?你有什么主意吗?
(我使用的是最新的 lambdaj-2.4)。
添加以满足马里奥的要求
代码是一个简单的枚举。类别是不同类别的基类,它有代码字段。此外,它是公共静态类,与所有继承类相同(如果重要的话)。
我将尝试提供失败的测试。
再次编辑以提供更多信息。 我的一个朋友查看了代码,并对这个问题提出了新的看法。
我将尝试从一开始就重现我们的演绎路径。
// 给定
有一个应用程序分为两部分,第一个基础应用程序(保存模型文件)和 Web 应用程序(保存 UI 连接文件,如 backing beans 等)。 我们的类别和代码是模型类,因此位于基础应用程序中。然后我们有一个支持 bean 服务于一些 web 逻辑,特别是 bean 或其合作者调用我们的 select。
// 什么时候
我们正在将应用程序部署到 Web 服务器!就我而言,JBoss。类由加载器读取,一些我不知道的非常复杂的事情发生了,所有这些都是为了让我的应用程序运行。我做了一些网络操作,然后调用了支持 bean 的方法
从应用程序的 Web 部分。
魔法来了。我们的 Category.class 和 Code.class 由 UnifiedClassLoader 在应用程序加载时加载。我们在on(Category.class)方法中,并且将构建 Category 的代理。一些真正纠结的逻辑被用来做到这一点,最重要的是,代理是用
方法,但 Callback.class 取自该类加载器
因此,最初加载该类 UnifiedClassLoader 的是一个类加载器。干净地完成所有这些之后,我们终于打电话给
使用反射浏览代理类寻找: Proxy.getDeclaredMethod("setThreadsCallbacks", new Class[]{ Callback[].class });
我忽略了事实,我不明白
在我们的例子中重要的是 Callback.class 不是由 UnifiedClassLoader 提供的。应用程序在网络轮胎中执行,因此对 Callback.class 的调用将通过网络应用程序进行服务器。类加载器和返回的 Callback.class 将与之前作为提到的setThreadsCallbacks函数的参数放置的内容不同。反思残酷地失败了。
这就是为什么我无法提供失败的测试。(相同的类加载器)。
我怀疑这种情况有什么解决方案。
java - 使用 lambdaj 的多个排序条件
如何在 lambdaj 中使用多个排序条件?例如,要获得一个列表,首先按名称排序,然后按年龄排序:
- 姓名年龄
- 名称A 14
- 名称 B 12
- 名称B 15
- 名称C 10
- 名称C 11
谢谢你的帮助。
java - 使用 lambdaj 过滤集合
我有两个这样的课程:
现在,我有一个包含订单的列表,并且想要获取所有具有特定内容头寸的订单。目前我这样做:
有没有更好的方法来用 lambdaj 做到这一点?
提前致谢。
lambdaj - LambdaJ index() 和键类型转换
我刚开始研究 LambdaJ,马上就遇到了问题。我不认为我在做任何奇怪的事情,但我不知道该怎么做。
我有一个管理员列表:
我有一张地图,我希望将这些管理员映射到:
问题是 Administrator 类中的 ID 是 Long,而不是 String。所以,我尝试了以下方法:
这是行不通的。它失败了:
如果我将地图更改为包含 Longs 并删除 toString(),错误就会消失。
这样做的正确方法是什么?
android - Android上的Lambdaj NoClassDefFoundError
我正在我的 android 应用程序中尝试 lambdaj,但即使是最简单的过滤操作也会失败,并列出异常。例如:
并且任何其他选择或过滤器最终都会出现相同的以下异常,知道吗?如果可以相关的话,“Person”类是一个greenDAO类......谢谢
android - lambdaj ProxyUtil.createEnhancer 异常
在我的 android 应用程序中成功导入 lambdaj,但是任何过滤器、选择或组操作都会引发此问题:
一个简单的操作例如:
Group<Person> groupedPersons= group(people,by(on(Person.class).getAge()));
java - 如何在没有显式转换的情况下在返回泛型类型的方法上使用 lambdaJ 的 extract()
我正在使用泛型来存储对任意对象的引用。
我想使用 lambdaJ 从集合中提取这些对象。现在我正在使用非常丑陋的双重铸造(List<TypeT>)(List<?>)
,我正在寻找更好/更清洁的解决方案。问题出在on( sth ).getReferencedObject()
语句中,不能像这样参数化on(Option<String>.class).getReferencedObject()
android - lambdaj 在 Android 上的任何调用都会导致 java.lang.ExceptionInInitializerError 失败
我正在尝试在 Android 上使用 lambdaj,但每次简单调用都会出现异常(java.lang.ExceptionInInitializerError)。
填充集合的类是:
ORMLite 使用注释。我留下了它们,以防它们可能以某种方式相关。不过我对此表示怀疑。
现在,如果我尝试打一个简单的电话,它会崩溃:
日志猫:
让我感到困惑的是,我在 Java 控制台应用程序中尝试了相同的代码并且它有效......
知道为什么这在Android上不起作用吗?
谢谢。
lambdaj - 根据嵌套在另一个集合中的条件过滤集合
有这个bean结构
如何过滤用户列表以仅包含具有至少一项权限的用户,其中 Permission.Detail.name 包含字符串“abc”?