我写了一个测试接口,我发布好了之后测试它,我接口里要传递的参数是JSONObject,
我测试客户端传了一个JSONObject类型的对象数据,可是接口实现类获取的为空,我
换成String类型的参数却可以。请问大家传递JSONObject格式的数据,接口方面该怎么写,我现在写的是:
接口:
@WebService
public interface IService {
@WebMethod
public void hello( JSONObject username);
}
接口实现类:
public class ServiceImp implements IService{
@Override
public void hello(JSONObject username) {
//String abs = username.getString("username");
System.out.println("从客户端获取的参数"+username);
}
}
客户端:
public class Client {
public static void main(String[] args) throws MalformedURLException{
// TODO Auto-generated method stub
//创建访问wsdl服务地址的url
URL url = new URL("http://10.10.10.154:7777/hp?wsdl");
//通过Qname指明服务的具体信息
/*
* 第一个参数:接口的包名称,反序
* 第二个参数:实现类名+Service
* */
QName qname = new QName("http://webservice.port.ios.com/","ServiceImpService");
//创建服务
Service service = Service.create(url, qname);
//实现接口
IService iservice = service.getPort(IService.class);
JSONObject jsonobj1 = new JSONObject("{'username':'huangbiao' }");
iservice.hello(jsonobj1);
}
}