Java使用hutool调用webservice

时间:2024-10-09 07:46:54
//服务地址 String url = ""; SoapClient client = SoapClient.create(url) // 设置要请求的方法,此接口方法前缀为v1,传入对应的命名空间 .setMethod("v1:cancRegEntIp", "http:xxxxxxxx "); // 设置参数,此处自动添加方法的前缀:v1 //添加一个<arg0></arg0> 里面包含下面这些参数 SOAPElement arg0 = client.getMethodEle().addChildElement("arg0"); arg0.addChildElement("dirty").setValue("23"); arg0.addChildElement("pkVal").setValue("103010021"); arg0.addChildElement("status").setValue("2023-05-01"); arg0.addChildElement("id_ent").setValue("2023-05-31"); //假如下层还有参数,那就需要这么写 // SOAPElement pageinfo = ().addChildElement("pageinfo"); // ("pagesize").setValue("500"); // ("pageindex").setValue("1"); // ("pagecount").setValue(""); // 往arg0中添加<pageinfo>参数,里面包含pagesize、pageindex、pagecount // (pageinfo); // 发送请求,参数true表示返回一个格式化后的XML内容 // 返回内容为XML字符串,可以配合XmlUtil解析这个响应 Console.log(client.send(true)); JSONObject xmlJSONObj = null; if (StringUtils.isNotBlank(client.send(true))) { try { xmlJSONObj = XML.toJSONObject(client.send(true)); } catch (JSONException e) { e.printStackTrace(); } if (xmlJSONObj != null) { //处理数据 System.out.println(JSON.toJSONString(xmlJSONObj)); } } return xmlJSONObj.toString(); }