当前位置: 首页 > news >正文

详述网站建设的过程大连网站建设个人

详述网站建设的过程,大连网站建设个人,宁夏自治区住房与城乡建设厅网站,大连网站开发选领超科技使用 SoapUI 调用别人提供的wsdl 文件调用成功没问题以后 根据apache cxf 生成的代码发起调用报错 刚开始报错找不到什么东西 然后我使用 System.setProperty(“javax.xml.bind.JAXBContext”, “com.sun.xml.internal.bind.v2.ContextFactory”); 加到代码里面解决此问题 然…

使用 SoapUI 调用别人提供的wsdl 文件调用成功没问题以后 根据apache cxf 生成的代码发起调用报错

刚开始报错找不到什么东西 然后我使用
System.setProperty(“javax.xml.bind.JAXBContext”, “com.sun.xml.internal.bind.v2.ContextFactory”);
加到代码里面解决此问题

然后又报错
com.sun.xml.internal.ws.fault.ServerSOAPFaultException: Client received SOAP Fault from server: Server Error Please see the server log to find more detail regarding exact cause of the failure.

这个就让我难受了 凭什么自动生成的代码调用会报错 最后找了半天找不到解决原因 于是就使用http发起请求调用 拿到 list bo里面的值 然后循环拼接到xml里面 最后发起调用即可解决 其实webservice 的服务也是一种请求格式 只要按照这个格式发起请求就不会出错

当然也可以加上对方的webservice 的账号密码 调用 以下是我的代码 直接异步调用 不需要管

免费公开 还希望您可以

点赞 评论 加关注

public static void main(String[] args) {ExecutorService executor = Executors.newSingleThreadExecutor();// 添加一些示例数据List<xxxx  > resList = new ArrayList<>();xxxx   bo1 = new xxxx  ();bo1.setId("1");bo1.setCode("ok");resList.add(bo1);xxxx  bo2 = new xxxx  ();bo2.setId("2");bo2.setCode("ok");resList.add(bo2);executor.submit(() -> {try{getallpust(resList);}catch (Exception e){System.out.println("报错");System.out.println(e);}});executor.shutdown();}public static void getallpust(List<xxxxxx> resultTableList){String url = "http://127.0.0.1:7000/xxxx/xxx/xxx/xxx";// 创建一个示例String soapMessage = buildSoapMessage(resultTableList);System.out.println(soapMessage);// 创建 HTTP 客户端try (CloseableHttpClient httpClient = HttpClients.createDefault()) {HttpPost httpPost = new HttpPost(url);// 设置请求头httpPost.setHeader("Content-Type", "text/xml;charset=UTF-8");httpPost.setHeader("SOAPAction", "http://sap.com/xi/WebService/soap1.1");// 添加 Basic AuthString auth = "xxxxx:xxxxx"; // 替换为你的账号和密码byte[] encodedAuth = Base64.getEncoder().encode(auth.getBytes(StandardCharsets.UTF_8));String authHeader = "Basic " + new String(encodedAuth);// 不需要账号密码的情况下 可以删掉httpPost.setHeader("Authorization", authHeader);// 设置请求体httpPost.setEntity(new StringEntity(soapMessage, StandardCharsets.UTF_8));// 发送请求try (CloseableHttpResponse response = httpClient.execute(httpPost)) {HttpEntity responseEntity = response.getEntity();if (responseEntity != null) {String responseString = EntityUtils.toString(responseEntity, StandardCharsets.UTF_8);System.out.println("Response: " + responseString);}}} catch (IOException e) {throw new RuntimeException(e);}}//这里拼接上自己的xml格式的内容public static String buildSoapMessage(List<xxxxxxx> xxxxxxxx) {StringBuilder soapMessageBuilder = new StringBuilder();soapMessageBuilder.append("<xxxxxxx>\n");soapMessageBuilder.append("   <xxxxxxx>\n");soapMessageBuilder.append("      <xxxxxxx>\n");soapMessageBuilder.append("      </xxxxxx>\n");soapMessageBuilder.append("   </xxxxxx>\n");soapMessageBuilder.append("</xxxxxxx>");return soapMessageBuilder.toString();}// 用于转义 XML 特殊字符public static String escapeXml(String input) {if (input == null) {return "";}return input.replace("&", "&amp;").replace("<", "&lt;").replace(">", "&gt;").replace("\"", "&quot;").replace("'", "&apos;");}

这个里面的url地址是别人提供给你的wsdl文件在soapUI里面导入以后发起调用的地址

在这里插入图片描述

1,打开soap 选择wsdl文件

2,找到你需要的请求 点击request 1

复制3的地址到你的url里面

注意!!!! url地址如果报错 我记得是 218 还是 208 就是有特殊字符 你自己转一下即可

http://www.dtcms.com/a/444392.html

相关文章:

  • 影响网站打开速度的因素wordpress中国加速
  • 网站开发服务商平台网站建设产品展示型的
  • 进入网站后台管理系统做境外旅游的网站
  • 外贸汽车网站有哪些学习网站建设的心得体会
  • 网站主机在哪里注册呢互联网金融网站建设
  • 微微营销官网广州营销优化
  • 广州高端网站建设定制免费网站空间 国外
  • 网站开发算是软件开发wordpress 用户登陆后跳转到首页
  • 巴彦淖尔市 网站建设海沧做网站
  • 软件网站建设方案wordpress 手机版
  • 南京网络推广网站建设公司网站优化排名软件哪些 最好
  • 建设网站流程队徽logo在线设计
  • 湖北钟祥建设局网站网页提示站点不安全
  • 医疗公司网站建设项目背景电子商务网站建设答辩记录
  • 城阳做网站公司学校网站建设市场
  • wordpress软件站主题网站开发 兼职
  • 网站怎么增加页面收录网站做不做301
  • 网站301重定向检测wordpress模板QQ评论
  • 做网站软文怎么弄公司网站制作公司倒闭
  • 做网站交付标准南宁会员网站制作
  • 做h5哪个网站好用佛山网站优化公司
  • 深度模型瘦身术:从100MB到5MB的工业级压缩实战
  • 建筑类电商网站玉林英文网站建设
  • 怎么做网站内容榆林网站建设公司
  • 域名注册服务的公司网站信用网站建设内容
  • 帮人做项目的网站攀枝花市建设银行网站
  • 超可爱做头像的网站西安建设工程网
  • 微信公众平台 网站 对接合肥网站建设套餐
  • 做招聘信息的网站有哪些方面公共服务标准化的意义
  • 网站漂浮物怎么做企业网站的设计思路