java - 无法使用 versionone java sdk 检索投影/多重关系字段 Requests.Custom_SFDCChangeReqID2

标签 java api sdk versionone

我一直在尝试使用 VersionOne.SDK.Java.APIClient 在 V1 上查询特定 Assets (故事/缺陷)来检索信息。我能够检索故事或缺陷下的 ID.Number、Status.Name 等信息,但无法检索 Requests.Custom_SFDCChangeReqID2

我检查元数据:

https://.../Story?xsl=api.xsl
https://.../meta.V1/Defect?xsl=api.xsl
https://.../meta.V1/Request?xsl=api.xsl

命名和信息看起来正确。

这是我的代码:

IAssetType type = metaModel.getAssetType("Story");

IAttributeDefinition requestCRIDAttribute = type.getAttributeDefinition("Requests.Custom_SFDCChangeReqID2");

IAttributeDefinition idNumberAttribute =    type.getAttributeDefinition("ID.Number")

Query query = new Query(type);
query.getSelection().add(requestCRIDAttribute);
query.getSelection().add(idNumberAttribute);

Asset[] results = v1Api.retrieve(query).getAssets();
String RequestCRID=    result.getAttribute(requestCRIDAttribute).getValue().toString();
String IdNumber= result.getAttribute(idNumberAttribute).getValue().toString();

此时,我可以获得 ID.Number 的一些值,但无法检索值 Custom_SFDCChangeReqID2 的任何信息。

当我从服务器的角度运行静态查询以使用浏览器检索信息时,它可以工作并且确实检索了我正在查找的信息。我使用了这个语法:

https://.../rest-1.v1/Data/Story?sel=Number,ID,Story.Requests.Custom_SFDCChangeReqID2,Story .

最佳答案

Alex:请记住,结果是 Assets 的数组,所以我想您应该使用类似的方法来访问信息 String RequestCRID= 结果[0].getAttribute(requestCRIDAttribute).getValue().toString(); String IdNumber= 结果[0].getAttribute(idNumberAttribute).getValue().toString(); 或迭代数组。 另请注意,您已经定义了: Assets [] 结果而不是结果

关于java - 无法使用 versionone java sdk 检索投影/多重关系字段 Requests.Custom_SFDCChangeReqID2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30129237/

相关文章:

python - 带有 Python 的 JSON "object must be str, not dict"

Android Studio 未检测到自定义 SDK

iphone - iPhone SDK-<3.2中的CATextLayer崩溃

java - 如何重新打开和中断键盘流?

java - Java 版本

java - Android 如何将.raw数据转换为.mp3文件?

java - 长解析器删除字符串开头的零

php - 在 null 上调用成员函数 helper()

javascript - 如何使用 Node js 中的 API key 从 REST api 获取数据?

iphone - 如何允许关联链接指向我的 iPhone 应用程序中的项目?