webservice
例如:java接口远程调用
一、使用步骤
1引入Maven依赖
<!-- axis 依赖开始 -->
<dependency>
<groupId>org.apache.axis</groupId>
<artifactId>axis</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>axis</groupId>
<artifactId>axis-jaxrpc</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>commons-discovery</groupId>
<artifactId>commons-discovery</artifactId>
<version>0.2</version>
</dependency>
<dependency>
<groupId>wsdl4j</groupId>
<artifactId>wsdl4j</artifactId>
<version>1.6.3</version>
</dependency>
<!-- axis 依赖结束 -->
2.读入数据
代码如下(示例):使用的url网络请求的数据。
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
public List<Map<String, String>> getSCUserInfoByUserId(String userId) {
List<Map<String, String>> xmlStr = new ArrayList<>();
try {
//使用webService调用获取xml信息
Service service = new Service();
Call call = (Call) service.createCall();
//设置接口url地址
call.setTargetEndpointAddress("http://ip:port/uums/services/UserService?wsdl");
//设置方法名
call.setOperationName("getUserInfoByUserId");
call.setTimeout(60000);
//设置参数
call.addParameter("userId", org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN);
call.addParameter("sessionId", org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN);
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
call.setUseSOAPAction(true);
//设置参数值
String reXmlDoc = (String) call.invoke(new Object[]{userId, ""});
System.out.println(reXmlDoc);
/**********************************解析xml***********************************/
List<Map<String, String>> maps = WebServiceUtil.convertToMap(reXmlDoc,"");
xmlStr = maps;
System.out.println(maps.toString());
} catch (Exception e) {
e.printStackTrace();
}finally {
return xmlStr;
}
}
总结
使用代码调用之前先使用远程工具(postman、apiPost等)调用,如果调用成功但是代码却不成功,检查一下调用url地址、方法名、参数名称及参数值是否需要加密处理等。
本文介绍了Java实现WebService接口远程调用的步骤,包括引入Maven依赖和读入数据。示例代码展示了如何使用URL获取网络请求数据。在实际调用中,建议先通过远程工具验证接口的正确性,检查URL、方法、参数等是否正确处理。
1万+

被折叠的 条评论
为什么被折叠?



