当前位置: 首页 > 编程笔记 >

Java调用CXF WebService接口的两种方式实例

空佐
2023-03-14
本文向大家介绍Java调用CXF WebService接口的两种方式实例,包括了Java调用CXF WebService接口的两种方式实例的使用技巧和注意事项,需要的朋友参考一下

通过http://localhost:7002/card/services/HelloWorld?wsdl访问到xml如下,说明接口写对了。

1.静态调用

    // 创建WebService客户端代理工厂
    JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
    // 判断是否抛出异常
    factory.getOutInterceptors().add(new LoggingInInterceptor());
    // 注册webservice接口
    factory.setServiceClass(DeductionService.class);
    // 配置webservice地址
    factory.setAddress("http://localhost:7002/card/services/HelloWorld?wsdl");
    // 获得接口对象
    CxfService service = (CxfService) factory.create();
    // 调用接口方法
    String result = service.sayHello("aaaaaaaaaa");
    System.out.println("调用结果:" + result);
    // 关闭接口连接
    System.exit(0);

2.动态调用:

JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
    org.apache.cxf.endpoint.Client client = dcf
        .createClient("http://localhost:7002/card/services/HelloWorld?wsdl");
    // url为调用webService的wsdl地址
    QName name = new QName("http://dao.xcf.digitalchina.com/", "sayHello");
    // namespace是命名空间,methodName是方法名
    String xmlStr = "aaaaaaaa";
    // paramvalue为参数值
    Object[] objects;
    try {
      objects = client.invoke(name, xmlStr);
      System.out.println(objects[0].toString());
    } catch (Exception e) {
      e.printStackTrace();
    }

区别:

静态调用需要依赖service类,因为客户端调用cxf webservice接口的过程中需要服务器端提供service,很不方便,如果同一个项目中则没有区别。

动态调用完全不依赖service类,服务器端只要提供接口名和路径就可以方便的调用。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对小牛知识库的支持。如果你想了解更多相关内容请查看下面相关链接

 类似资料:
  • 本文向大家介绍python调用接口的4种方式代码实例,包括了python调用接口的4种方式代码实例的使用技巧和注意事项,需要的朋友参考一下 这篇文章主要介绍了python调用接口的4种方式代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 python中调用API的几种方式: - urllib2 - httplib2 - pycurl - r

  • 本文向大家介绍Java 调用Restful API接口的几种方式(HTTPS),包括了Java 调用Restful API接口的几种方式(HTTPS)的使用技巧和注意事项,需要的朋友参考一下 摘要:最近有一个需求,为客户提供一些Restful API 接口,QA使用postman进行测试,但是postman的测试接口与java调用的相似但并不相同,于是想自己写一个程序去测试Restful API接

  • 本文向大家介绍深入浅析Restful接口的两种使用方式,包括了深入浅析Restful接口的两种使用方式的使用技巧和注意事项,需要的朋友参考一下 为什么用restful接口? 怎么用呢? restful接口常用的两种方式是get和post.下面简单介绍一下这两种方式的使用. 由于调用restful接口是通过url的方式来访问后端的代码.新建CustRegisterApi类以后,除了基本的注入外,还需

  • 本文向大家介绍总结C#动态调用WCF接口的两种方法,包括了总结C#动态调用WCF接口的两种方法的使用技巧和注意事项,需要的朋友参考一下 如何使用 1、第一种方式比较简单,而且也是大家喜欢的,因为不需要任何配置文件就可解决,只需知道服务契约接口和服务地址就可以调用。 2、使用Invoke的方式,但是需要在调用客户端配置WCF,配置后在Invoke类里封装服务契约接口即可。 客户端调用DEMO 第一种

  • 本文向大家介绍python3连接MySQL8.0的两种方式,包括了python3连接MySQL8.0的两种方式的使用技巧和注意事项,需要的朋友参考一下 1、下载MySQL官方的mysql-connector-python-8.0.17-py3.7-windows-x86-64bit.msi,直接点击安装; 2、安装完毕后直接可以导入mysql.connnector模块 连接方式一: 连接方式二:

  • 本文向大家介绍Java中匿名类的两种实现方式,包括了Java中匿名类的两种实现方式的使用技巧和注意事项,需要的朋友参考一下 使用匿名内部类课使代码更加简洁、紧凑,模块化程度更高。内部类能够访问外部内的一切成员变量和方法,包括私有的,而实现接口或继承类做不到。然而这个不是我说的重点,我说的很简单,就是匿名内部类的两种实现方式:第一种,继承一个类,重写其方法;第二种,实现一个接口(可以是多个),实现其