问题描述
对于域值示例,我会将其表述为“示例”并手动将 Getter(在 ARL 中)定义为 return "Example"; 如教程中所述。
然后我定义一个输入/输出变量 myDomainExample 并尝试通过 REST API 对其进行测试。
如果我写了一个虚拟规则,例如:
then
set 'my domain example' to Example;
我得到这个 json 结果:
{
"__DecisionID__": "144805689948397501147221553","myDomainExample ": "Example"
}
如果我编写以下虚拟规则:
if
'my domain example' is Example
then
set 'my domain example' to Example;
然后我输入以下 json 负载:
{
"__DecisionID__": "144805689948397501147221553","myDomainExample ": "Example"
}
我收到此错误消息:
java.lang.classCastException: java.lang.String 与 java.lang.Enum 不兼容
有谁知道这是什么原因造成的? 我也试过用大写字母,但也没用。
我也可以为此域编写一个 Java 类,但我宁愿不这样做。
解决方法
我发现了问题,我在定义这个的时候错误地使用了 2 个超类(Object 和 Enum)。
仅使用一个(对象,如链接教程中所定义)解决了问题