【问题标题】:displaying content of Object of someother class, Acessing webservice object显示其他类的对象的内容,访问 Web 服务对象
【发布时间】:2014-02-12 05:43:03
【问题描述】:

如何通过我的类访问其他类的对象? 我尝试了 toString ,但它只能显示自己对象的内容,而不能显示其他类对象的内容。

基本上,我可以通过 java 代码(xmlrpc)访问 Bugzilla Webservice API,作为回报,我得到一个 class java.util.HashMap. 的对象 但我无法理解如何访问返回的对象。

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

我如何从以下位置获取错误信息:“createResult”对象。即,cretaeResult 对象的内容。根据 Bugzilla 文档返回两项,错误和故障,都是 数组哈希。我想访问这些。

【问题讨论】:

    标签: java web-services object xml-rpc bugzilla


    【解决方案1】:

    如果它返回一个HashMap,那么你想让变量“createResult”成为一个HashMap。即,

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

    那么“createResult”就是一个HashMap,你可以这样使用它,例如 createResult.isEmpty() createResult.size() 等等

    祝你好运!

    【讨论】:

      【解决方案2】:

      万一其他人需要这个。 来自 Bugzilla 的对象首先被类型转换为 HashMap 类型。 HashMap 本身的每个 Keyset 都是一个对象,其中包含一个对象的数组,其中每个对象又是一个 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) );
          }
      }
      

      【讨论】:

        猜你喜欢
        • 2012-12-14
        • 1970-01-01
        • 1970-01-01
        • 2018-09-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多