1.首先需要下载cxf。官方下载地址:
http://cxf.apache.org/download.html
下载 Binary distribution zip。
2.解压至任意目录,以便之后用cxf的工具生成java调用的类。目录结构是这样的。
3.在eclipse中新建maven工程,编写pom.xml 引入相关jar。pom.xml文件内容如下
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>ws</groupId>
<artifactId>ws</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>ws Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.3.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>3.2.3.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.3.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>3.1.4.RELEASE</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxrs</artifactId>
<version>2.7.5</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-api</artifactId>
<version>2.7.5</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<version>2.7.5</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-databinding-xmlbeans</artifactId>
<version>2.7.6</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<version>2.7.6</version>
</dependency>
<dependency>
<groupId>javax.xml.ws</groupId>
<artifactId>jaxws-api</artifactId>
<version>2.2.11</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.1</version>
</dependency>
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>axiom-api</artifactId>
<version>1.2.14</version>
</dependency>
<dependency>
<groupId>org.apache.xbean</groupId>
<artifactId>xbean-spring</artifactId>
<version>3.14</version>
</dependency>
<dependency>
<groupId>com.caucho</groupId>
<artifactId>hessian</artifactId>
<version>4.0.7</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-bindings-soap</artifactId>
<version>2.7.5</version>
</dependency>
</dependencies>
<build>
<finalName>ws</finalName>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.0-SNAPSHOT</version>
<configuration>
<url>http://localhost:8080/manager/text</url>
<server>tomcat7</server>
<username>admin</username>
<password>admin</password>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
</plugin>
</plugins>
</build>
</project>
4.在web.xml中配置spring和cxf servlet,web.xml文件内容如下
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:ws.xml</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<servlet>
<servlet-name>CXFServlet</servlet-name>
<display-name>CXF Servlet</display-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>/ecm/ws/*</url-pattern>
</servlet-mapping>
</web-app>
spring 配置文件 ws.xml 的内容最后在贴出来。下一步写service接口。
5.hello world 接口类
@WebService
public interface HelloWorldService {
public void sayHello();
}
接口实现类
public class HelloWorldServiceImpl implements HelloWorldService {
public void sayHello() {
System.out.println("hello world.");
}
}
6.在spring中配置webservice,ws.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:context="http://www.springframework.org/schema/context"
xmlns:http-conf="http://cxf.apache.org/transports/http/configuration"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation="
http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.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"/>
<context:component-scan base-package="com.ws" />
<jaxws:endpoint id="helloWorldService"
implementor="com.bocins.ecm.ws.impl.HelloWorldServiceImpl"
address="/helloWorld" >
</jaxws:endpoint>
</beans>
7.启动tomcat ,测试webservice 是否发布成功 在地址栏输入 http://localhost:8080/boc/ecm/ws/ 就可以看到所有已发布的webservice了。
如图
点击 {http://impl.ws.ecm.bocins.com/}HelloWorldServiceImplService 访问生成的 helloworld wsdl
如图:
说明webservice 服务发布成功。
可以进入下个环节了。
8.利用cxf提供的工具生成调用类,具体过程 如图
到bin目录下执行wsdl2java ,利用cxf提供的工具生成调用webservice的java类。
wsdl2java 参数简单说明 -p 指定要生成java类的包名称
-d src java类的根目录 存放包的文件夹
-all 生成webservice所有的调用类
加webservice地址
生成的类
9.将生成的java类,拷贝到eclipse
直接运行 HelloWorldService_HelloWorldServiceImplPort_Client
会在控制台输出:hello world.
webservice 环境已搭建成功。
下一章会写如何利用webservice上传下载文件。
- 大小: 38.2 KB
- 大小: 3.7 KB
- 大小: 16.5 KB
- 大小: 7.8 KB
- 大小: 90.5 KB
分享到:
相关推荐
2. **创建Spring项目**:使用Spring Initializr生成一个新的Maven或Gradle项目,包含CXF和Spring的相关依赖。 3. **配置Spring**:在`applicationContext.xml`或通过Java配置类定义Spring的bean,包括CXF的`...
4. **Spring集成**:CXF可以通过Spring的`@WebService`和`@Endpoint`注解来声明服务,利用Spring的依赖注入特性,实现更灵活的服务定义和管理。 **CXF与SpringBoot整合** 在SpringBoot中集成CXF,通常需要以下步骤...
- **工具支持**:CXF提供了一系列工具,支持JavaBean、Web服务与WSDL之间的转换,并且与Maven、Ant和Spring等工具无缝集成。 - **RESTful服务支持**:除了传统的SOAP服务外,CXF还支持RESTful服务,并且内置了JAX-RS...
这个案例可能包括一个CXF服务端点和一个Spring配置文件,用于演示上述集成过程。 通过这种集成方式,开发者可以充分利用Spring的灵活性和CXF的强大功能,轻松创建和使用Web服务。这种集成模式特别适合大型企业级...
CXF(CXF: Composite eXtensible Framework)是一个开源的Java框架,它主要用于构建和开发Web服务。CXF使得开发者能够轻松地创建和部署高质量、高性能的SOAP和RESTful Web服务。CXF工具类是CXF框架的一部分,提供了...
WebService是Web应用程序之间进行通信的一种技术,它允许不同的系统通过Internet进行交互,实现了跨平台、跨语言的数据交换。本文将详细介绍使用JDK和CXF两种方式来开发WebService服务端。 一、JDK原生实现...
这个实例将展示如何使用CXF从头开始创建一个简单的WebService,并在Tomcat服务器上部署和运行。 1. **CXF环境配置** 在开始之前,确保你已经安装了Java JDK和Apache Tomcat。接着,需要将CXF的JAR文件添加到项目的...
7. **容器支持**:CXF可以很好地与Spring框架集成,同时也支持其他Java EE容器,如Tomcat、Jetty等。 8. **国际化和本地化**:CXF支持多语言环境,允许服务提供者和消费者进行跨语言交互。 9. **错误处理和异常...
在使用Apache CXF 2.7.7时,你可能会遇到的常见任务包括配置CXF的Spring XML配置文件、编写服务接口和服务实现、生成客户端代码、部署服务到应用服务器,以及进行性能优化和故障排查。熟悉这些知识点将有助于你高效...
Apache CXF是一个开源的Java框架,它主要用于构建和开发Web服务。这个项目的名字"CXF"代表了"CXF融合一切"(CXF = See Everything Fusion)。Apache CXF允许开发者以多种方式创建Web服务,包括使用Java API for Web ...
3. **Spring集成**:默认情况下,CXF依赖于Spring框架,这意味着在没有Spring的环境中可能需要额外的配置才能正常运行。 #### 六、示例:服务端实现 下面是一个简单的服务端实现示例,展示了如何使用CXF发布一个...
Apache CXF 是一个开源的Java框架,用于构建和开发服务导向架构(SOA)和Web服务。这个"最新apache-cxf-3.2.7"压缩包包含了该框架的3.2.7版本,这是Apache CXF在发布时的一个稳定版本。在本文中,我们将深入探讨...
在这个“webservice示例(cxf开发的例子)”中,我们主要探讨的是如何使用CXF框架来开发一个简单的Web服务。首先,让我们了解Web服务的基本概念和CXF框架的核心功能。 1. **Web服务基础**: - **SOAP**:简单对象...
Apache CXF 是一个强大的开源框架,专为构建和消费 Web 服务而设计。它提供了全面的支持,涵盖了从基本的 Web 服务实现到高级特性的广泛范围。以下是对 CXF 实现 WebService 的全面总结: 1. **Web 服务标准支持**...
根据文件提供的内容,本篇文档是关于Apache CXF开发实例的详细说明,主要包含了Web服务的创建、部署以及相关技术的介绍。下面将分别详细阐述以下几个方面的知识点: ### CXF基础知识 Apache CXF是一个开源的服务...
在给出的部分内容中,可以看出这个例子是一个基于Maven的Web应用项目,使用了CXF的多个模块,通过Maven的依赖管理来确保所有必要的组件都被正确引入。 总结起来,Apache CXF 是Java Web服务开发的重要工具,它简化...
1. **环境准备**:确保已安装Java环境,然后下载并配置Apache CXF的库。通常,这可以通过在项目中添加相应的Maven或Gradle依赖来完成。 2. **创建REST服务接口**:定义一个Java接口,声明服务方法,这些方法对应...
Apache CXF是一个开源的Java框架,它用于构建和开发Web服务。这个框架提供了一种灵活的方式来进行服务的创建、发布和调用。"Code-First"是CXF的一个重要概念,意味着开发者首先编写Java代码,然后CXF会自动生成相应...
**CXF入门实例详解** Apache CXF 是一个开源的Java框架,主要用于构建和开发Web服务。...这只是一个起点,CXF还支持更高级的功能,如安全、MTOM、Spring集成等,为开发复杂的Web服务提供了强大的支持。
Apache CXF 是一个开源的Java框架,主要用于构建和开发Web服务。这个压缩包"apache-cxf-3.3.7.zip"包含了Apache CXF 3.3.7版本的所有组件和资源,允许开发者在他们的应用中集成和使用CXF来创建、部署和管理Web服务。...