Categories: ItTech
今天在J2ME平台程序中使用kXMLRPC访问Tomcat上运行的XML-RPC接口,怎么都不能正确处理数组类型的返回结果。
没问题,把kXMLRPC的源码下载下来,卷起袖子打开调试器……
不到5分钟找到出错的地方,仔细看看数据,再对比XML-RPC的规范……
咦,怎么kXMLRPC处理数组类型的代码和规范不一样,似乎漏了对data标签的处理。有戏,改改试试……
再次运行程序,成功了!
开源软件就是好呀就是好!
附上修改的代码:在kXMLRPC的XmlRpcParser的parseArray方法中找到一个while循环,在循环前后加上data标签的处理:
parser.read(Xml.START_TAG, "", "data"); // <----------------
while( parser.peek().getType() != Xml.END_TAG ) {
v.addElement( parseValue() ); // parse this element value
parser.skip();
}//end while( parser.peek().getType() != Xml.END_TAG )
parser.read(Xml.END_TAG, "", "data"); // <------------------
Posted by dumm at December 12, 2005 05:35 PM