webservice 调用修改多参

3.2.4.44
wyb 2 years ago
parent 12538de7b0
commit d51a9c0905

@ -8,6 +8,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import javax.xml.namespace.QName; import javax.xml.namespace.QName;
import java.util.Arrays;
import java.util.Map; import java.util.Map;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
@ -21,22 +22,23 @@ public class JaxWsDynamicClient {
private static final Map<String, Client> CLIENT_MAP=new ConcurrentHashMap<>(); private static final Map<String, Client> CLIENT_MAP=new ConcurrentHashMap<>();
private static final Logger logger= LoggerFactory.getLogger(JaxWsDynamicClient.class); private static final Logger logger= LoggerFactory.getLogger(JaxWsDynamicClient.class);
public static String send(String wsdlUrl,String namespaceUri,String operationName,Object param){ public static String send(String wsdlUrl,String namespaceUri,String operationName,Object[] params){
logger.debug("wsdlUrl" + wsdlUrl +"namespaceUri: "+namespaceUri+ " operationName" + operationName + "param:" + Arrays.toString(params));
try { try {
Client client = getClient(wsdlUrl); Client client = getClient(wsdlUrl);
Object[] result; Object[] result;
if (namespaceUri == null || namespaceUri.isEmpty()) { if (namespaceUri == null || namespaceUri.isEmpty()) {
result = client.invoke(operationName, param); result = client.invoke(operationName, params);
} else { } else {
QName qName = new QName(namespaceUri, operationName); QName qName = new QName(namespaceUri, operationName);
result = client.invoke(qName, param); result = client.invoke(qName, params);
} }
if (result == null || result[0] == null) { if (result == null || result[0] == null) {
return null; return null;
} }
return String.valueOf(result[0]); return String.valueOf(result[0]);
} catch (Exception ex) { } catch (Exception ex) {
logger.error("wsdlUrl" + wsdlUrl + " operationName" + operationName + "param:" + param + " 调用失败了!", ex); logger.error("wsdlUrl" + wsdlUrl +"namespaceUri: "+namespaceUri+ " operationName" + operationName + "param:" + Arrays.toString(params)+" 调用失败了!", ex);
return null; return null;
} }
} }
@ -59,14 +61,7 @@ public class JaxWsDynamicClient {
httpClientPolicy.setConnectionTimeout(30000); httpClientPolicy.setConnectionTimeout(30000);
httpClientPolicy.setAllowChunking(false); httpClientPolicy.setAllowChunking(false);
httpClientPolicy.setReceiveTimeout(30000); httpClientPolicy.setReceiveTimeout(30000);
HTTPConduit clientConduit = (HTTPConduit) client.getConduit(); HTTPConduit clientConduit = (HTTPConduit) client.getConduit();
clientConduit.setClient(httpClientPolicy); clientConduit.setClient(httpClientPolicy);
} }
public static void main(String[] args) {
String[] param={"111"};
System.out.println(send("http://127.0.0.1:9311/webservice/api?wsdl","http://impl.webservice.collection.server.docus.com/", "pushUpdateInspectionReport", param));
}
} }

@ -463,11 +463,11 @@ public class ReportJob {
return new ArrayList<>(); return new ArrayList<>();
} }
String param = organizationQuerySdRyReportIndexParam(sDryIndex); String param = organizationQuerySdRyReportIndexParam(sDryIndex);
String[] params={"HIP1179",param};
String namespaceUri = sdRyReportQueryConfig.getQueryReportIndexWsdlNamespaceUri(); String namespaceUri = sdRyReportQueryConfig.getQueryReportIndexWsdlNamespaceUri();
String wsdlAddr = sdRyReportQueryConfig.getQueryReportIndexWsdlAddr(); String wsdlAddr = sdRyReportQueryConfig.getQueryReportIndexWsdlAddr();
String operationName = sdRyReportQueryConfig.getQueryReportIndexWsdlOperationName(); String operationName = sdRyReportQueryConfig.getQueryReportIndexWsdlOperationName();
String result = JaxWsDynamicClient.send(wsdlAddr, namespaceUri, operationName, param); String result = JaxWsDynamicClient.send(wsdlAddr, namespaceUri, operationName, params);
log.info("查询顺德人医患者交叉索引数据,返回值:{}", result); log.info("查询顺德人医患者交叉索引数据,返回值:{}", result);
if (result == null) { if (result == null) {
return new ArrayList<>(); return new ArrayList<>();

@ -28,7 +28,7 @@ spring:
redis: redis:
host: redis.docus.cn host: redis.docus.cn
# password: JSdocus@702 password: JSdocus@702
cloud: cloud:
nacos: nacos:
discovery: discovery:

Loading…
Cancel
Save