Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object;
at pvgs.XmlRpcServiceClient.main(XmlRpcServiceClient.java:24)

解决方案 »

  1.   

    那么该怎么样把Object类型转换为arrayList类型呢??
      

  2.   

    先看看返回值是什么类型?也许就不是List类型,所以你自然转化不成List。
    Object object =client.execute("userInfo.getAccountInfo", params);
    String name = object.getClass().getName();
    System.out.println(name);
      

  3.   

    Object object =client.execute("userInfo.getAccountInfo", params);
    String name = object.getClass().getName();
    System.out.println(name);
    --->结果是
    [Ljava.lang.Object
    如果我方法getAccountInfo的返回制为String,我object强制转换为String,没问题的.现在我方法为list类型,转换为list类型的就出错了
      

  4.   

    你用的apache的包,我没有用过。但和jax-rpc的Dynamic Invocation Interface (DII)应该是一种形式。
    你能强制转换为String,说明object类型的变量指向是一个String。你打印的结果是
    java.lang.Object自然不能转换为其他类型,这说明运行环境返回给你的就是Object,查一查apache的文档支持arrayList吗?不行的话就用数组,这也是BP推荐的用法,不论什么运行环境都应该支持。由于我没用过apache的包,所以只能推断一下,可能有不对的地方。
      

  5.   

    我也刚遇到过这个问题,apache的axis不能直接返回List类型,你可以用多维数组替换list,达到传递list中对象值得效果。