`

CXF Webservice(二) 整合spring

    博客分类:
  • CXF
阅读更多

一、下载jar包

jar包地址:http://cxf.apache.org/download.html

二、建立一个WebProject

导入相关jar包(apache-cxf-2.7.5.zip



 

三、建立服务端

1、新建一个WS接口

@WebService
public interface HelloWorld {
	
	public String getName(String name);
}

2、新建WS接口 实现类

package com.cxf.server.impl;

import javax.jws.WebService;

import com.cxf.server.HelloWorld;

@WebService(endpointInterface = "com.cxf.server.HelloWorld", serviceName = "helloWorldImpl")
public class HelloWorldImpl implements HelloWorld {

	@Override
	public String getName(String name) {
		System.out.println("Server-------"+name);
		return name;
	}
}

  注解说明: 

  *@WebService:申明为webservice的注解,这样cxf就知道这是个webservice了
  *endpointInterface:要暴露的接口类
  *serviceName :    服务名,其实就是调用地址

 

3、在WEB-INF目录下新建cxf-webservice.xml,如下:

 

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jaxws="http://cxf.apache.org/jaxws"
	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">  
    
    <!-- Import Apache CXF Bean Definition -->
	<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="helloWorldImpl" implementor="com.cxf.server.impl.HelloWorldImpl" address="/helloWorld">
	</jaxws:endpoint>
</beans>

   xml说明: 

   implementor :接口类的实现类
   address:   要和注释里面声明的服务名对应,对应的是外部访问地址

 

4、在修改web.xml文件,如下

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>WEB-INF/cxf-webservice.xml</param-value>
  </context-param>
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <servlet>
    <servlet-name>CXFServlet</servlet-name>
    <servlet-class>    
            org.apache.cxf.transport.servlet.CXFServlet    
        </servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>CXFServlet</servlet-name>
    <url-pattern>/*</url-pattern>
  </servlet-mapping>
</web-app>

 

5、将项目发布到tomcat,启动tomcat 

6、浏览器输入http://localhost:8080/TestWeb/helloWorld?wsdl 输出相应结果说明服务端创建成功。 


四、编写调用WS测试代码

package com.cxf.client;

import org.apache.cxf.interceptor.LoggingInInterceptor;
import org.apache.cxf.interceptor.LoggingOutInterceptor;
import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;

import com.cxf.server.HelloWorld;

public class TestHelloWorld {

	public static void main(String[] args) {
		JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();    
        factory.getInInterceptors().add(new LoggingInInterceptor());    
        factory.getOutInterceptors().add(new LoggingOutInterceptor());    
        factory.setServiceClass(HelloWorld.class);    
        factory.setAddress("http://localhost:8080/TestWeb/helloWorld");
        HelloWorld client = (HelloWorld) factory.create();    
        String reply = client.getName("Test01");    
        System.out.println(reply);        
	}
}

 

分享到:
评论

相关推荐

    CXF WebService整合Spring示例工程代码demo

    CXF WebService整合Spring示例工程代码demo可以直接导入eclipse。参照网页http://www.cnblogs.com/hoojo/archive/2011/03/30/1999563.html 完成的webService服务提供。 大致步骤: 1.引入cxf和其他需要的jar包,(本...

    CXF WebService整合Spring

    **CXF WebService 整合Spring** 在Java世界中,CXF是一个强大的开源服务框架,它支持多种Web服务标准,包括SOAP、RESTful等。而Spring框架则以其强大的依赖注入和面向切面编程能力,成为了Java开发中的核心框架。将...

    WebService的CXF整合Spring

    将CXF与Spring整合的主要目的是利用Spring的管理能力来配置和控制CXF组件,例如服务端点、客户端代理等。这样可以实现更细粒度的控制,提高代码的可测试性和可维护性。 整合步骤如下: 1. **引入依赖**:首先,在...

    Apache Cxf WebService整合Spring

    Apache Cxf WebService整合Spring 处理Map、非javabean式的复合类等CXF无法自动转化的类型 CXF为服务器端和客户端添加自定义拦截器进行权限检查验证并且控制台打印日志

    CXF WebService整合Spring代码(包含服务,客户端两个工程 和 文档)

    CXF WebService整合Spring代码(包含服务,客户端两个工程 和 文档) 需要视频的话,留邮箱

    CXF_WebService整合Spring

    【CXF WebService 整合 Spring】整合 CXF WebService 与 Spring 框架能够带来许多优势,例如更好的服务管理、依赖注入以及利用 Spring 的事务处理能力等。以下是整合过程中涉及的关键步骤和知识点: 1. **所需 jar ...

    webservice cxf 整合spring例子源代码

    【标题】:Webservice CXF 整合Spring的实例源码解析 在Web服务开发中,Apache CXF是一个广泛使用的开源框架,它提供了创建、部署和管理Web服务的强大功能。CXF不仅支持SOAP,还支持RESTful API,使得开发者能够...

    CXF WebService整合Spring的简单实现

    整合CXF与Spring的主要优点是,Spring可以帮助管理CXF服务的生命周期,并提供依赖注入(DI)功能,使得服务更容易测试和维护。以下是一步一步的整合过程: 1. **环境准备**:确保已安装并配置了Java开发环境,如JDK...

    cxf webservice+spring+mybatis 整合(含Jar包)

    在IT行业中,构建一个高效且灵活的企业级应用是至关重要的,而"CXF Webservice+Spring+MyBatis 整合"就是一个这样的解决方案。这个整合利用了三个强大的开源框架:Apache CXF、Spring以及MyBatis,来实现Web服务、...

    cxf整合spring

    本文将深入探讨如何将CXF与Spring框架整合,以构建高效且灵活的Web服务解决方案。 首先,让我们了解CXF。CXF(CXF = CXF = "CXF 是一个框架")是一个开源的Java框架,它允许开发人员创建和消费各种Web服务,包括...

    springBoot完整整合WebService框架CXF示例

    SpringBoot与CXF整合是构建基于Web服务的应用程序的一个常见实践。CXF是一个开源的Java框架,用于构建和开发服务导向架构(SOA)应用程序,它支持SOAP和RESTful服务。SpringBoot则简化了Spring应用的初始化和配置,...

    mybatis+spring+cxf Webservice框架

    【标题】"mybatis+spring+cxf Webservice框架"是一个集成性的开发框架,它结合了三个主流的技术组件:MyBatis、Spring和Apache CXF,用于构建高效、灵活且易于维护的Web服务。MyBatis是一个优秀的持久层框架,Spring...

    cxf开发webservice与spring整合所需jar包

    将CXF与Spring整合,可以实现更高效、灵活的服务开发。下面我们将详细探讨在CXF开发Web服务并与Spring整合时,这些特定jar包的作用。 1. **cxf-2.7.1.jar**:这是CXF的核心库,包含了处理Web服务请求和响应的基本...

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

    标题"webservice(cxf)与spring整合源码+文档"表明这是一个关于如何将CXF Web服务与Spring框架集成的学习资源。文档和源代码一起提供,使得学习者能够通过实践来理解这一过程。 描述中提到"webservice与spring整合...

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

    CXF可与其他Java EE技术如Spring、Hibernate等无缝集成,提供更强大的功能。例如,通过Spring容器管理CXF服务,可以实现依赖注入和事务管理。 总结,CXF作为一个强大的Web服务框架,提供了从服务端到客户端的全方位...

    webservice客户端,整合spring

    整合Spring Security和CXF,可以实现对Web Service调用的安全控制,如身份验证、授权、加密等。 10. **监控和日志**: 可以利用Spring的Actuator或CXF自身的监控功能,对Web Service客户端的调用情况进行监控和...

    cxf+spring整合

    "CXF+Spring整合"是企业级Java应用程序中常用的一种技术组合,它结合了Apache CXF(一个用于构建和服务导向架构的开源框架)和Spring框架的优势,以实现高效、灵活的服务开发和管理。在Java世界里,CXF常用于创建Web...

    webservice之Spring整合CXF

    WebService小白学习 之 Spring整合CXF,添加拦截器。 博客学习地址:https://blog.csdn.net/qq_37902949/article/details/81262826

    SpringBoot框架及CXF发布WebService

    4. **Spring集成**:CXF可以通过Spring的`@WebService`和`@Endpoint`注解来声明服务,利用Spring的依赖注入特性,实现更灵活的服务定义和管理。 **CXF与SpringBoot整合** 在SpringBoot中集成CXF,通常需要以下步骤...

Global site tag (gtag.js) - Google Analytics