大家好,小弟在做web服务时遇到了一些问题,想请教大家,问题如下:我写了几个web服务 返回值均为自定义对象或泛型集合,但在客户端调用时接受不到服务器端查询的值。
附代码:
1.实体类:
public  class Employee implements java.io.Serializable { // Fields private Integer employeeId;
private Workcell workcell;
private Department department;
private String employeeName;
private String employeePassword;
private String employeeRealName;
private String employeeAccount;
private Integer employeeAge;
private String employeeGender;
private String employeeAddress;
private String employeePhone;
private String employeeIsDisable;2.服务器端代码:public class EmployeeServiceImpl implements EmployeeService {

private EmployeeDao dao;

public Employee commonLogin(String loginName, String loginPassword,
String tag) {
dao=(EmployeeDao) SpringBeanManager.getBean("employeeDao");
return this.dao.login(loginName, loginPassword, tag);
} public void setDao(EmployeeDao dao) {
this.dao = dao;
}

}
3.客户端调用://使用web进行用户通信
String emURL="http://localhost:8080/RightsService/service/emService";
String powerURL="http://localhost:8080/RightsService/service/powerService";
//初始化web服务
EmployeeWebService ews=(EmployeeWebService) ServiceUtil.createWebService(EmployeeWebService.class,emURL);
PowerWebService pws=(PowerWebService) ServiceUtil.createWebService(PowerWebService.class, powerURL);

//调用web服务
//base为资源标识
cn.crmManagement.webService.entity.Employee webEm=ews.commonLogin(tempEmployee.getName(), tempEmployee.getPassword(), "base");
List<Powers> webPowers=pws.getUserAllPowers(webEm.getEmployeeId());

解决方案 »

  1.   

    客户端又不认识你服务端的对象
    客户端可以部署在任何支持协议的环境下,你确定那个环境能支持你定义的返回对象类型吗?
    不过这个我也没有深究过,不知道用对象序列化行不行,反正我都是用String返回,什么语言都通用
      

  2.   

    自定义的类型必须有一个类型释义文件,要么是注解式的,要么是xml配置文件类的。不会就老老实实用基本类型+String+List,Map,数组,这么多类型不够用非得用破对象?还是对象里套对象?
      

  3.   

    我的map都用不起来  string list是可以用的
      

  4.   


    key和value都要加注泛型。
      

  5.   


    key和value都要加注泛型。public Map<String,Object> getmap(Map<String,Ojbect> map); 您看这样可以吗?