zoukankan      html  css  js  c++  java
  • Java调用WebService接口

    在实际开发工作中,会遇到接口对接的场景,有直接HTTP调用方式,参数体为JSON串;还有一种是SOAP方式,即webService接口。

    首先,可以在浏览器上安装一个插件(Wizdler),如下图。

     通过这个插件,我们可以轻松的看到所有的方法

     点击方法,可以直接生成对应的请求参数,替换相关参数,可以直接调用方法;

     下面来讲一下如何使用Java代码实现接口的调用;

        @Test
        public void test(){
            try{
                String webServiceUrl = "http://238.62.169.140:8090/g6_venues/webservice/gtv-external-venues-service?wsdl";
                JaxWsDynamicClientFactory factory1 = JaxWsDynamicClientFactory.newInstance();
                Client client = factory1.createClient(webServiceUrl);
                HTTPConduit conduit = (HTTPConduit)client.getConduit();
                HTTPClientPolicy clientPolicy = new HTTPClientPolicy();
                //连接超时
                clientPolicy.setConnectionTimeout(2000);
                //取消块编码
                clientPolicy.setAllowChunking(false);
                //响应超时
                clientPolicy.setReceiveTimeout(12000);
                conduit.setClient(clientPolicy);
                String startDateTime = "20201018090000";
                String endDateTime = "20201228160000";
                Object[] result = client.invoke("queryFreeRoomInfo",startDateTime ,endDateTime ); //queryFreeRoomInfo为方法名;
                System.out.println("返回结果:" + result[0].toString());
            }catch (Exception e){
                e.printStackTrace();
            }
    
        }
    JaxWsDynamicClientFactory、HTTPConduit、Client、HTTPClientPolicy需要引入对应的依赖,
     
    
    
    
     
  • 相关阅读:
    Prime Ring Problem 素数环
    下沙的沙子有几粒?
    小兔的棋盘
    超级楼梯
    一只小蜜蜂...
    变形课
    Buy the Ticket
    How Many Trees?
    通过拦截器来统计每个action的执行时间
    apache+tomcat+session(JK实现方式)
  • 原文地址:https://www.cnblogs.com/lovefaner/p/13811057.html
Copyright © 2011-2022 走看看