2012-02-15 61 views
2

目前我正在使用webservices在java应用程序和.net应用程序之间交换信息。 所有主数据类型(double,int,string,...)都正确交换。 也是一个简单的数组被正确运输。但是,我试图将HashMap从java传输到.net(尽管我知道.net没有HashMap的,所以我可能会使用Dictionary或某种类型)。 关于如何做到这一点的任何想法? 我知道我可以使用数组,但如果可能的话,我想要一个更好的解决方案。Java和c#之间的Webservices - 复杂的数据类型

更具体,这将是这样的:

@WebMethod 
public HashMap<String, HashMap<String, Double>> 
       foo(@WebParam(name = "bar") String path){...} 
+0

使用xml元素 – 2012-02-15 11:49:05

+0

这可能有所帮助 - http://stackoverflow.com/questions/4654423/how-to-have-a-hashmap-as-webparam-with-jbossws- 3-1-2。 – Perception 2012-02-15 11:53:45

回答

0

如果可以选择,我建议以JSON格式进行数据交换。它具有以下优点

  1. 其较详细的比较XML
  2. 更容易对网络带宽小
  3. 在客户端解析方面的开销。

但是,如果你的地图对象有循环引用,那么你可能不得不跳过箍环。看看Jackson library转换为JSON