2013-08-23 180 views
2

我嘗試將討論添加到用戶故事。返回 參考:代碼通過REST API從URL獲取ObjectID Java

 QueryResponse storyQueryResponse = restApi.query(storyRequest); 
     JsonObject storyJsonObject = storyQueryResponse.getResults().get(0).getAsJsonObject(); 
     String storyRef = storyJsonObject.get("_ref").toString(); 
     System.out.println("Ref: " + storyRef); 

     Ref ref = new Ref(); 
     System.out.println(ref.getOidFromRef(storyRef)); 
     System.out.println(ref.isRef(storyRef)); 

     createDis.addProperty("Artifact", ref.getOidFromRef(storyRef)); 
     createDis.addProperty("Text", "Java-Java-Java-Java-Java-Java-Java-Java-Java-Java-Java-Java"); 
     CreateRequest createRequest = new CreateRequest("ConversationPost", createDis); 
     CreateResponse createResponse = restApi.create(createRequest); 

的System.out.println(+ storyRef 「參考」):部分 「https://rally1.rallydev.com/slm/webservice/v2.0/hierarchicalrequirement/13097497257

ref.getOidFromRef(storyRef)返回NULL ref.isRef(storyRef)回報FALSE

爲什麼?

回答

0

這條線是無效的,並導致你的裁判周圍有一組額外的引號:

String storyRef = storyJsonObject.get("_ref").toString(); 

它更改爲這應該得到它的正常工作:

String storyRef = storyJsonObject.get("_ref").getAsString(); 

始終使用getAs方法而不是toString。