wsdl接口,soap:address location地址为内部地址,通过"org.apache.cxf"包访问的时候,出现"org.apache.cxf.interceptor.Fault: Could not send Message"。
原代码
第一种方式:通过指定conduit的方式,指定地址
Client client = factroy.createClient(request.getWsdlUrl());
// 组装可供外部访问的接口
String newUrl = BASE_URL.substring(0, request.getWsdlUrl().length()-5);
HTTPConduit httpConduit = (HTTPConduit) client.getConduit();
httpConduit.getTarget().getAddress().setValue(newUrl);
//此处有多种构建方法
results = client.invoke(request.getMethod(), request.getAppId(), request.getAppSecret());
第二种方式:比较适合的方式,还是有甲方进行修改比较合适。