【发布时间】:2019-09-12 09:08:24
【问题描述】:
我们目前正在努力为实体提供 OData 服务,该实体的键的一部分是 DateTime 类型的属性。此键属性不是 SAP Cloud Provisioning SDK 提供的 OData 请求中的键映射的一部分。这似乎是由于 com.sap.cloud.sdk.service.prov.v2.data.provider.CXSDataProvider.getKeys(List) 方法中的请求解析存在错误:
if (type.toString().equals("Edm.Date")) {
Date value = type.valueOfString(keyPredicate.getLiteral(), EdmLiteralKind.DEFAULT, property.getFacets(), Date.class);
keys.put(property.getName(), value);
}
由于 OData 标准中没有 Edm.Date 类型,我的猜测是以下内容应该是正确的:
if (type.toString().startsWith("Edm.Date")) {
[s. above]
}
这是正确的还是我们在这里做错了什么?此外,方法本身上有一个 TODO 标记,指出当前仅支持 EDM 类型的子集作为键。是否有计划修复此 TODO?
【问题讨论】:
-
嗨蒂姆,我已经在内部重定向了你的问题,一旦我知道更多,我会及时通知你。 BR,弗洛里安
-
嗨,蒂姆,您使用的是哪个版本的 SDK?这是一个有效的问题,可以在您的版本中提供修复。
-
嗨,谢谢,我们将不胜感激!我们的版本是 2.17.0。
-
嗨 Tim,我想知道
com.sap.cloud.servicesdk.prov odatav2-prov 的版本。必须在 1.** -
好的,抱歉,这是 1.29.0
标签: sap-cloud-sdk