【发布时间】:2018-11-01 05:22:19
【问题描述】:
我是新来的,希望你能帮助我。 我有一个 javascript 函数,在那里我调用了这样的函数:
var criticalDateStart = new Date(1525683802394);
var criticalDateEnd = new Date(1525770202394);
var users = enumerateUsers({
userId : userId,
criticalDateStart : criticalDateStart.getTime(),
criticalDateEnd : criticalDateEnd.getTime(),
});
此外,我在服务器上有一个 lambda 函数,看起来像这样:
Function<Object, Object> enumeratePatients = (arg) -> {
if (arg instanceof ScriptObjectMirror) {
ScriptObjectMirror _arg = (ScriptObjectMirror) arg;
Integer userId = (Integer) _arg.get("userId");
Long criticalDateStart = (Long)_arg.get("criticalDateStart");
Long criticalDateEnd = (Long)_arg.get("criticalDateEnd");
ResteasyClient client = new ResteasyClientBuilder().build();
ResteasyWebTarget rtarget = client.target(Url);
Rest rest = rtarget.proxy(Rest.class);
return rest.enumerateUsers(
new EnumerateUserParameter(
userId,
criticalDateStart,
criticalDateEnd));
}
return null;
};
但是它返回一个错误
java.lang.ClassCastException: java.lang.Double 不能转换为 java.lang.Long.
问题出在哪里?
顺便说一句,错误在长 criticalDateStart 和结束行。
【问题讨论】:
-
你使用什么框架与后端通信?
-
是否可以避免强制转换?stackoverflow.com/questions/321549/…