日期:2014-05-18  浏览次数:20727 次

webservice里面如何传一个map?
我用的是xfire开发的,做了一个简单的测试程序

先定义了一个接口,需要传入一个map
public interface MapService {
public String getMap(Map<String,String> map);
}


然后定义了一个实现类

public class MapServiceImp implements MapService {

public String getMap(Map<String,String> map) {

String str="";

Iterator it = map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry entry = (Map.Entry)it.next();
Object key = entry.getKey();
Object value = entry.getValue(); 
str+="(key=" + key.toString() + ", value=" + value.toString()+"),";

}

str="["+str.substring(0,str.length()-1)+"]";

return str;

}
}


然后在aegis.xml里面就不知道怎么定义了
是这样定义的吗?我调试了好像不正确

<?xml version="1.0" encoding="UTF-8"?>  
<mappings>  
  <mapping >  
   
  <method name="getMap">  
  <parameter index="0" keyType="java.lang.String" componentType="java.lang.String"/> 
  </method>  
   
  </mapping >  
</mappings>  




------解决方案--------------------
<return-type componentType="java.util.Map" />试试