2014-02-12 93 views
0

如何通過我的類訪問某個其他類的對象? 我試過toString,但它只能顯示其自己的對象而不是其他類對象的內容。顯示其他類對象的內容,調用webservice對象

基本上,我能夠通過訪問java代碼(XML-RPC)的Bugzilla web服務API,作爲回報,我得到的class java.util.HashMap. 一個對象,但我無法理解如何訪問返回的對象。

Object createResult = rpcClient.execute("Bug.search", new Object[]{bugMap}); 

我如何得到錯誤的信息:「createResult」 object.ie,到Bugzilla的文件cretaeResult object.According內容兩項返回,錯誤和故障,都是陣列哈希的。我想訪問這些。

回答

0

如果別人需要這個。 來自Bugzilla的對象首先被轉換爲HashMap類型。 HashMap本身的每個鍵集都是一個包含對象數組的對象,其中每個對象又是一個Hashmap。相當複雜。

HashMap bugs = (HashMap)bugzillaObject; 
for(Object key : bugs.keySet()) 
{ 

    Object value = bugs.get(key); 
    Object[] valueArray = (Object[])value; 
    for(Object v : valueArray) 
    { 

     HashMap L = (HashMap)v; 
     for(Object key1 : L.keySet()) 
     System.out.println("Key " + "= "+key1 + ", value " + "= "+ L.get(key1)); 
    } 
} 
0

如果它返回一個HashMap,那麼你想讓變量「createResult」成爲一個HashMap。即,

HashMap createResult = rpcClient.execute("Bug.search", new Object[]{bugMap}); 

然後 「createResult」 是一個HashMap,你可以使用它作爲這樣的,如 createResult.isEmpty() createResult.size() 等

祝你好運!