一、需求
使用postman请求webservice
(想自学习编程的小伙伴请搜索圈T社区,更多行业相关资讯更有行业相关免费视频教程。完全免费哦!)
二、webservice接口
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import java.util.ArrayList;
@WebService
public interface UserService {
@WebMethod
String getName(@WebParam(name = "req1") String req1, @WebParam(name = "req2") String req2);
@WebMethod
User getUser(@WebParam(name = "userId") String userId);
@WebMethod
User getUserObj(@WebParam(name = "user") UserReq req);
@WebMethod
ArrayList<User> getAlLUser();
}
三、解决方案
Postman Headers需要设置Content-Type 为 text/xml;charset=utf-8,Body选择raw XML(text/xml)
1、请求参数为String
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://service.webservicedemo.owater.com/">
<soapenv:Body>
<ws:getName>
<userId>Owater</userId>
</ws:getName>
</soapenv:Body>
</soapenv:Envelope>
2、请求返回对象
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://service.webservicedemo.owater.com/">
<soapenv:Body>
<ws:getName>
<userId>Owater</userId>
</ws:getName>
</soapenv:Body>
</soapenv:Envelope>
返回值
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns2:getUserResponse xmlns:ns2="http://service.webservicedemo.dbgo.com/">
<return>
<age>20</age>
<updateTime>2019-06-25T22:44:48.740+08:00</updateTime>
<userId>411001</userId>
<username>owater</username>
</return>
</ns2:getUserResponse>
</soap:Body>
</soap:Envelope>
3、请求参数为对象
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://service.webservicedemo.owater.com/">
<soapenv:Body>
<ws:getUserObj>
<user>
<name>testname</name>
<age>100</age>
</user>
</ws:getUserObj>
</soapenv:Body>
</soapenv:Envelope>
4、请求返回集合
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://service.webservicedemo.owater.com/">
<soapenv:Header/>
<soapenv:Body>
<ws:getAlLUser>
</ws:getAlLUser>
</soapenv:Body>
</soapenv:Envelope>
返回值
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns2:getAlLUserResponse xmlns:ns2="http://service.webservicedemo.owater.com/">
<return>
<age>20</age>
<updateTime>2019-06-25T10:56:08.867+08:00</updateTime>
<userId>411001</userId>
<username>owater</username>
</return>
<return>
<age>40</age>
<updateTime>2019-06-25T10:56:08.867+08:00</updateTime>
<userId>411002</userId>
<username>owater2</username>
</return>
</ns2:getAlLUserResponse>
</soap:Body>
</soap:Envelope>