`

webservice之cxf客户端的使用方式

 
阅读更多
webservice的客户端实现有如下四种方式:
一、WSDL2Java generated Client
HelloService service = new HelloService();
Hello client = service.getHelloHttpPort();
 
String result = client.sayHi("Joe");

二、JAX-WS Proxy
Instead of using a wsdl2java-generated stub client directly, you can use Service.create to create Service instances, the following code illustrates this process:
import java.net.URL;
import javax.xml.ws.Service;
...
 
URL wsdlURL = new URL("http://localhost/hello?wsdl");
QName SERVICE_NAME = new QName("http://apache.org/hello_world_soap_http", "SOAPService");
Service service = Service.create(wsdlURL, SERVICE_NAME);
Greeter client = service.getPort(Greeter.class);
String result = client.greetMe("test");

3、ClientProxyFactoryBean – Making a Client Proxy
import demo.hw.server.HelloWorld;
import org.apache.cxf.frontend.ClientProxyFactoryBean;
...
 
ClientProxyFactoryBean factory = new ClientProxyFactoryBean();
factory.setServiceClass(HelloWorld.class);
factory.setAddress("http://localhost:9000/Hello");
HelloWorld client = (HelloWorld) factory.create();

4、Dynamic Client
JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
Client client = dcf.createClient("echo.wsdl");
 
Object[] res = client.invoke("echo", "test echo");
System.out.println("Echo response: " + res[0]);

Many WSDLs will have more complex types though. In this case the JaxWsDynamicClientFactory takes care of generating Java classes for these types. For example, we may have a People service which keeps track of people in an organization. In the sample below we create a Person object that was generated for us dynamically and send it to the server using the addPerson operation:
JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
Client client = dcf.createClient("people.wsdl", classLoader);
 
 
Object person = Thread.currentThread().getContextClassLoader().loadClass("com.acme.Person").newInstance();
 
Method m = person.getClass().getMethod("setName", String.class);
m.invoke(person, "Joe Schmoe");
 
client.invoke("addPerson", person);
分享到:
评论

相关推荐

    CXF 一个完整的webService(整合客户端和服务端)

    整合CXF客户端和服务端** 在实际项目中,可能会同时存在服务端和客户端的开发。为了确保它们之间的兼容性,需要确保服务端发布的WSDL与客户端使用的WSDL一致。CXF提供了丰富的API和工具来简化这一过程。 - 测试:...

    Java webservice cxf客户端调用demo和服务端

    Java WebService CXF客户端调用和服务端的实现是企业级应用程序中常见的通信方式,它基于标准的SOAP(Simple Object Access Protocol)协议,提供了一种在分布式环境中交换信息的方法。CXF是一个开源框架,它简化了...

    springboot整合CXF发布webservice和客户端调用

    - 对于客户端调用,可以使用CXF的`JaxWsProxyFactoryBean`创建服务代理对象,然后调用其方法进行服务调用。 4. **项目结构** - `.classpath`和`.project`是Eclipse IDE的项目配置文件。 - `pom.xml`是Maven的...

    WebService开发客户端 cxf方式

    3. **构建客户端配置**:在CXF客户端中,通常需要配置客户端的地址、协议等信息。这可以通过XML配置文件或者Java代码实现。 4. **实例化客户端和服务调用**:生成的Java代码中会有服务接口和服务代理类。实例化代理...

    Java cxf开发webservice,分别有客户端和服务端

    1.使用Java 2.用cxf开发webservice ...客户端也需要接口类文件和pojo,和cxf客户端xml 但是没有接口的实现类,就是为了去服务端来调用的。 具体有不懂可以问我 给我发消息, 劳烦评价 ,请大家支持原创 禁止转载

    webservice的cxf框架客户端调用所需jar包

    这些JAR包组合在一起,为CXF客户端调用提供了完整的环境,包括XML解析、SOAP消息处理、加密安全、缓存优化、消息传递以及依赖管理等多个方面。在实际项目中,将这些JAR包放入项目的`lib`目录下,确保了所有必要的...

    cxf 开发webservice客户端

    在IT行业中,CXF是一个广泛使用的开源框架,用于开发和实现Web服务,无论是SOAP(简单对象访问协议)还是RESTful风格的服务。本篇文章将详细探讨如何利用CXF框架开发一个Web服务客户端,以及如何进行测试。 一、CXF...

    cxf的webservice的客户端代码

    在这个“cxf的webservice的客户端代码”主题中,我们将深入探讨如何使用CXF框架来构建一个能够与Web服务交互的客户端。 首先,创建CXF Web服务客户端的核心在于理解服务代理的生成。CXF提供了WSDL2Java工具,可以从...

    webservice cxf 服务端客户端传递参数的例子demo

    Web服务在IT行业中扮演着重要的...对于初学者而言,通过实践这个demo,可以深入理解Web服务的工作原理,以及CXF框架的使用方式。在实际开发中,这样的技能是非常有价值的,因为Web服务是分布式系统间通信的重要手段。

    webservice cxf 客户端创建

    **创建Webservice CXF客户端的步骤如下:** **服务端项目准备:** 1. **引入Webservice库:** 首先,你需要下载Apache CXF的库。例如,你可以获取apache-cxf-2.7.6.zip,并将其解压缩。将解压后的`lib`目录中的...

    使用cxf和spring开发基于https的webservice服务端以及客户端样例

    本示例将详细介绍如何使用Apache CXF和Spring框架来开发基于HTTPS的安全Web服务,包括服务端和客户端的实现。 Apache CXF是一个开源的Java框架,它支持创建和消费各种Web服务,包括SOAP和RESTful API。而Spring框架...

    WebService之CXF(二、客户端的生成与调用)

    这篇博客文章“WebService之CXF(二、客户端的生成与调用)”将深入探讨如何使用CXF来创建和调用Web服务客户端。下面我们将详细解析这一主题。 首先,了解CXF的基本概念至关重要。CXF不仅支持SOAP(简单对象访问...

    使用cxf wsdl2java生成webservice客户端

    使用cxf wsdl2java生成webservice客户端命令

    CXF动态webservice客户端demo

    这个"CXF动态webservice客户端demo"是为了演示如何使用CXF库创建一个动态调用Web服务接口的客户端应用程序。 首先,我们需要了解Web服务的基本概念。Web服务基于SOAP(Simple Object Access Protocol)协议,通过...

    CXF webservice 动态地址客户端相关代码和jar包

    1. **CXF客户端API**:CXF提供了两种主要的客户端API,即JAX-WS(Java API for XML Web Services)和JAX-RS(Java API for RESTful Web Services)。JAX-WS用于SOAP服务,而JAX-RS用于RESTful服务。动态地址的概念...

    CXF客户端,自动生成方式

    6. **使用CXF客户端**:生成的客户端代码可以直接在你的项目中使用。通过实例化服务代理类,调用对应的方法,传入参数,即可发起Web服务请求。CXF会处理底层的HTTP通信和XML序列化/反序列化。 7. **异常处理**:CXF...

    webService(基于cxf)的完整例子

    例如,可以使用`@WebService`注解标记一个Java类为Web服务接口,并使用`@Path`注解来定义RESTful服务的URL路径。 4. **CXF服务部署**:CXF提供多种部署方式,包括独立服务器、Tomcat等应用服务器,以及Spring容器。...

    cxf webService客户端

    在文件列表中的"WebServiceClient"可能是一个示例项目,包含了创建和运行CXF Web服务客户端的源代码和配置文件。通过分析这个项目,你可以更好地理解如何在实际开发中应用上述概念。 总之,CXF为Java开发者提供了一...

    CXF作为客户端调用webService的demo

    用CXF作为客户端调用webService的demo:本人亲测可用,eclipse工程项目包含完整代码和完整jar包, 只要用eclipse导入项目即可,运行控制台显示success或者false字符串,说明OK。

Global site tag (gtag.js) - Google Analytics