`
liugang594
  • 浏览: 981480 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[CXF] Server与Client实现方式一:JAXWS

 
阅读更多
【参考:http://cxf.apache.org/docs/jax-ws-configuration.html

一、SEI的定义

假设有以下SEI定义:

@WebService
public interface OrderProcess {
    public String processOrder(Order order);
}

 (实现端省略)

 

二、Server端发布

则最简单的发布Server的方式可以如下:

 

        Endpoint.publish("http://localhost:8181/orderProcess", new OrderProcessImpl());

 

或者是spring的方式:

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:jaxws="http://cxf.apache.org/jaxws"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
	xsi:schemaLocation="
	   http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
       http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">

	<import resource="classpath:META-INF/cxf/cxf.xml" />
	<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
	<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />

	<jaxws:endpoint id="orderProcess"
		implementor="com.liulutu.liugang.cxf.jaxws.OrderProcessImpl" address="http://localhost:8090/orderProcess" />
</beans>

 三、Client端调用

        Service service = Service.create(new URL("<wsdlfilepath>"),
                new QName("namespace", "servicename"));
        OrderProcess port = orderProcessService.getPort(OrderProcess.class);
        String s = port.processOrder(<arg>);
        System.out.println(s);

 或者Spring的方式:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:jaxws="http://cxf.apache.org/jaxws"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="
          http://www.springframework.org/schema/beans 
          http://www.springframework.org/schema/beans/spring-beans.xsd
          http://cxf.apache.org/jaxws 
          http://cxf.apache.org/schemas/jaxws.xsd">
 
    <jaxws:client id="orderClient"
                  serviceClass="com.liulutu.liugang.cxf.codefirst.OrderProcess"
                  address="http://localhost:8181/orderProcess" />
</beans>

 然后在java代码里:

		ClassPathXmlApplicationContext xmlApplicationContext = new ClassPathXmlApplicationContext(
        "/META-INF/spring/jaxwsspringclient.xml");
		OrderProcess bean = xmlApplicationContext.getBean(OrderProcess.class);
		System.out.println(bean.processOrder(<order>));

 

分享到:
评论

相关推荐

    CXF Spring 整合

    可以使用`&lt;jaxws:client&gt;`或`&lt;cxf:client&gt;`标签来配置客户端,设置服务地址和其他参数。 5. **CXF_Spring_Server**:这个文件夹可能包含服务器端的应用配置和实现,包括Spring配置文件、服务接口和实现类,以及部署...

    CXF_Spring

    4. **服务消费**:使用`jaxws:client`或`jaxrs:client`标签配置客户端代理,方便调用远程服务。 5. **利用AOP**:Spring的AOP特性可以用于实现日志记录、事务控制等服务行为。 **示例代码** 以下是一个简单的Spring...

    cxf和spring实现案例

    5. **服务消费**:同样,Spring可以创建CXF客户端代理,通过 `&lt;jaxws:client&gt;` 或 `&lt;jaxrs:client&gt;` 配置元素,可以方便地生成客户端代码,进行服务调用。 6. **安全性集成**:CXF与Spring Security的整合可以实现...

    spring 3.0.5 集成cxf

    3. **配置CXF服务**:使用Spring的`&lt;jaxws:endpoint&gt;`或`&lt;jaxrs:server&gt;`标签声明并配置CXF服务。 4. **配置服务发布**:指定服务的WSDL地址,可能还需要配置数据绑定和协议绑定(如SOAP或REST)。 5. **创建客户端*...

    cxf+Spring实现webservice工程

    5. **测试与调试**:运行CXFServer和CXFClient,通过发送请求和接收响应来测试Web服务是否正常工作。这一步可以通过单元测试或集成测试来完成。 在提供的压缩包文件中,"CXFServer"可能包含了服务端的相关代码,...

    spring与cxf集成配置小实例

    在IT行业中,Web服务是不同系统间通信的重要方式,而Webservice是实现这一目标的常见技术之一。Spring框架以其灵活性和强大的依赖注入能力被广泛应用于Java应用开发,而CXF则是一个优秀的开源Web服务框架,它支持...

    webserver所有cxf依赖jar

    【标题】"webserver所有cxf依赖jar"指的是在Web服务器环境下,为了支持CXF(一个开源的服务框架)运行所需要的一系列Java Archive (JAR) 文件。这些JAR文件是CXF框架的核心组件以及其依赖的第三方库,它们共同构成了...

    webservice(cxf)与spring整合源码+文档

    2. "ws_1231_cxf_spring_server":这可能是一个服务器端的项目,实现了CXF Web服务并集成了Spring。学习者可以通过此项目了解如何在Spring容器中配置和管理CXF服务提供者,以及如何处理请求和响应。 3. "ws_1231_cxf...

    apache cxf helloworld小例子

    CXF提供了多种方式与服务交互,包括基于Java的客户端API和基于SOAP消息的客户端。对于简单的案例,可以使用CXF的WS客户端工具生成Java代理类。首先,使用CXF的WSDL2Java工具从服务的WSDL(Web Service Description ...

    WebService的CXF整合Spring

    你可以使用Spring的`jaxws:endpoint`或`jaxrs:server`标签来声明服务端点,`jaxws:client`或`jaxrs:client`标签来声明客户端。 3. **服务实现**:编写Web服务接口和实现类。接口通常遵循某种Web服务规范,如SOAP的...

    cxf+spring整合

    这可以通过使用`&lt;jaxws:endpoint&gt;`或`&lt;jaxrs:server&gt;`标签来完成。 ```xml &lt;jaxws:endpoint xmlns=...

    基于webservice实现的一个CXF例子

    CXF使用Spring或JAXWS的`@WebService`注解来标记接口和实现类,表明它们是Web服务的一部分。 **运行与调试** 在CXF项目中,通常会使用一个启动脚本来启动Web服务服务器,例如`cxf-service.xml`这样的Spring配置...

    cxf+spring使用经验

    2. **创建服务提供者**:创建一个新的项目,例如 `cxfserver`,作为 Web 服务的服务端。确保所有 CXF 相关的库已经添加到项目中。 3. **定义服务接口**:使用 `@WebService` 注解声明 Web 服务接口,例如 `...

    Spring集成Cxf调用WebServices

    5. **调用Web Services**:对于客户端,Spring提供了一个`&lt;jaxws:client&gt;`标签,可以用来配置CXF客户端。在这个标签中,可以设置服务地址、服务接口、端点地址等参数。这样,Spring会自动创建一个客户端代理,可以...

    CXF的入门实例

    它提供了多种方式来创建和消费SOAP以及RESTful服务,是Java世界中广泛使用的Web服务实现工具。在这个"CXF HelloWorld"入门实例中,我们将探讨如何使用CXF生成和使用WSDL(Web服务描述语言)文件,这是理解Web服务...

    JAVA CXF webservice的示例代码

    本示例代码是基于Eclipse集成开发环境的一个项目,旨在帮助开发者理解和实践如何在Java中使用CXF来实现Web服务。 首先,我们需要了解Web服务的基本概念。Web服务是一种通过互联网进行通信的应用程序接口(API)。它...

    cxf3.2.0 webservice 最少jar包

    - `cxf-rt-frontend-jaxws.jar`:包含JAX-WS(Java API for XML Web Services)的实现,用于服务端和客户端的Web服务创建。 - `cxf-rt-transports-http.jar` 和 `cxf-rt-transports-http-hc.jar`:分别提供基于Java...

    cxf实现webService

    在本教程中,我们将深入探讨如何使用CXF实现一个简单的“Hello World”Web服务。 ### 1. Web服务基础知识 Web服务是一种基于互联网的软件应用程序接口(API),允许不同系统之间交换数据。它们通常使用XML...

    CXF建立webservice服务端和客户端

    在项目中的`SOAP_SERVER`目录可能包含了服务端的相关配置和代码,而`SOAP_CLIENT`目录则可能包含了客户端的代码和生成的代理类。为了确保服务端和客户端能正常通信,你需要确保XML请求符合服务端接口的预期,同时...

    CXF webService 接口

    CXF的名字来源于"CXF = XFire + CXF",XFire是CXF的前身,而CXF则代表了“Client eXtended Framework”。在Java开发中,CXF被广泛用于创建和消费Web服务,因为它提供了直观且灵活的API,简化了Web服务的实现过程。 ...

Global site tag (gtag.js) - Google Analytics