第一步:在myeclipse中新建一个web项目名为myWs,
并导入依赖的jar包(cxf,spring,apache-commons相关)
1、commons-logging-1.1.1.jar
2、cxf-2.4.1.jar
3、geronimo-activation_1.1_spec-1.1.jar
4、geronimo-annotation_1.0_spec-1.1.1.jar
5、geronimo-javamail_1.4_spec-1.7.1.jar
6、geronimo-jaxws_2.2_spec-1.0.jar
7、geronimo-servlet_3.0_spec-1.0.jar
8、geronimo-stax-api_1.0_spec-1.0.1.jar
9、geronimo-ws-metadata_2.0_spec-1.1.3.jar
10、jettison-1.3.jar
11、jetty-continuation-7.4.2.v20110526.jar
12、jetty-http-7.4.2.v20110526.jar
13、jetty-io-7.4.2.v20110526.jar
14、jetty-server-7.4.2.v20110526.jar
15、jetty-util-7.4.2.v20110526.jar
16、neethi-3.0.0.jar
17、saaj-api-1.3.jar
18、saaj-impl-1.3.2.jar
19、serializer-2.7.1.jar
cxf结合spring时所需jar包,此例子也需要这些,用到了spring上下文加载
(
spring-asm-3.0.5.RELEASE.jar
spring-beans-3.0.5.RELEASE.jar
spring-context-3.0.5.RELEASE.jar
spring-core-3.0.5.RELEASE.jar
spring-expression-3.0.5.RELEASE.jar
spring-aop-3.0.5.RELEASE.jar
spring-web-3.0.5.RELEASE.jar
)
20、wsdl4j-1.6.2.jar
21、xalan-2.7.1.jar
22、xercesImpl.jar
23、xml-resolver-1.2.jar
24、xmlschema-core-2.0.jar
第二步:在WEB-INF中创建基本的cxf-beans.xml内容如下(作用:主要做webservice接口属性配置,通过web.xml配置加载,文件名和位置可以顺便,web.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"
xmlns:cxf="http://cxf.apache.org/core"
xsi:schemaLocation="http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"
default-autowire="byType" default-lazy-init="true">
<description>使用Apache CXF的Web Service配置文件,以下三个为固定配置文件(不需要创建)</description>
<import resource="classpath:META-INF/cxf/cxf.xml" />
<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
<!--在这里配置相应内容-->
</beans>
第三部:在web.xml中加入cxf相应配置,内容如下:
<!--cxf start-->
<!--用于加载cxf-beans.xml配置信息-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/cxf-beans.xml</param-value>
</context-param>
<!--使用spring ContextLoaderListener 加载cxf-beans.xml-->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!--配置CXFServlet-->
<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可自定义配置,用于CXFServlet请求地址拦截,访问会用到 -->
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
<!--cxf end -->
第四步:创建webservice接口及实现类
1,创建接口
@WebService()//此注解必须,里面name,portName,targetNamespace serviceName 可以不用指定
public interface IHelloService {
public String sayHello();
}
2,创建实现类
public class HelloWorldServiceImpl implements IHelloService {
public String sayHello() {
System.out.println("It's my first webservice !");
return "你已经成功调用sayHello()方法!";
}
}
第五步:配置cxf-beans.xml,加入以下内容:
<!--id:随意配,implementor:指定接口具体实现类,address:随意配,访问时会用到,下面会做说明-->
<jaxws:endpoint id="HelloWorldService" implementor="com.ws.HelloWorldServiceImpl"
address="/IHelloService">
</jaxws:endpoint>
第六步:发布webservice到tomcat
1,验证ws是否发布成功:
1.1,如果项目发布放在TOMCAT_HOME/webapps下时:
访问http://IP地址:端口/项目名/services/{cxf-beans.xml中配置的address}?wsdl
1.2,如果是在tomcat_home/conf的server.xml中配置的是外部站点(<Context path="/testWs" docBase="D:\Developer\myWs" debug="0" reloadable="false" />),
那访问方式应该是http://IP:端口/path值(没有就不用加)/services/{cxf-beans.xml中配置的address}?wsdl,
例如:http://localhost:8080/testWs/services/IHelloService?wsdl //services对应web.xml中的<url-pattern>/services/*</url-pattern> services
验证是否能正常看到xml格式的页面
可以用SoapUi 软件测试接口
GOOD LUCKY!!!
写的不明的地方,还请大家提出
远程具体调用方式请参考:CXF 入门之远程接口调用
分享到:
相关推荐
【标题】:“CXF入门(Hello World)” 【描述】:这篇文章主要介绍如何使用Apache CXF框架进行Web服务开发,通过一个简单的“Hello World”示例来帮助初学者理解CXF的基本用法。 Apache CXF是一个开源的Java框架...
总的来说,这个资源是学习Apache CXF入门的好材料,涵盖了基础的Web服务开发流程,并通过实例演示了CXF的使用,有助于开发者快速理解和掌握CXF框架。在实际的学习过程中,建议配合阅读CXF的官方文档,以便更深入地...
【标题】"cxf_helloworld.rar" 是一个关于Apache CXF框架入门的示例项目,它专注于SOA(Service-Oriented Architecture,面向服务架构)的实现,特别是使用Java技术。"SOA CXF_SOA JAVA_cxf_cxf helloworld_hello...
CXF入门步骤 #### 2.1 创建项目 首先,我们需要一个Maven项目,确保`pom.xml`中包含了CXF的依赖: ```xml <groupId>org.apache.cxf <artifactId>cxf-rt-frontend-jaxws <version>3.3.3 <groupId>org....
这个"helloWorld"示例是学习CXF入门的典型教程,旨在帮助开发者理解如何通过CXF快速地搭建服务并进行交互。 【描述】虽然描述部分为空,但根据通常的教程结构,我们可以推测这个例子会涵盖以下步骤: 1. **环境...
【CXF入门 -- 第一个简单webService】 Apache CXF 是一款强大的开源服务框架,它用于构建和开发服务,包括Web服务。本篇文章将带你入门CXF,通过创建一个简单的Web服务来理解其基本概念和工作流程。 1. **CXF简介*...
标题 "CXF 2.3 集成Spring3.0入门 HelloWorld" 指向的是一个关于如何在Java项目中使用Apache CXF 2.3版本与Spring 3.0框架进行集成的教程,特别是通过一个简单的"Hello World"应用来演示这个过程。Apache CXF是一个...
### 使用CXF发布和调用WebService之HelloWorld入门详解 #### 一、概述 本文将详细介绍如何使用Apache CXF框架来实现一个简单的WebService——HelloWorld示例。此示例不仅适用于初学者理解WebService的基本概念,...
**CXF入门实例详解** Apache CXF 是一个开源的Java框架,主要用于构建和开发Web服务。它提供了多种方式来创建和消费SOAP以及RESTful服务,是Java世界中广泛使用的Web服务实现工具。在这个"CXF HelloWorld"入门实例...
【cxf+spring+struts2的helloWorld】展示了如何将CXF、Spring和Struts2这三大框架结合在一起构建一个简单的应用程序。Struts2是一个流行的MVC框架,用于处理用户请求和展示结果。在这样的架构中,CXF通常作为服务层...
通过“HelloWorld”示例,你可以了解到CXF服务端接口定义、实现、部署和客户端调用的全过程。 - **2. WSDL结构分析.swf** WSDL是描述Web服务的语言,这个视频将深入解析WSDL的结构和组成,帮助你理解如何使用CXF...
标题 "CXF入门例子" 暗示了我们要探讨的是Apache CXF框架的初步使用,这是一个流行的开源服务框架,用于构建和开发Web服务。Apache CXF允许开发者通过Java API来创建SOAP和RESTful Web服务,提供了强大的功能和易用...
在HelloWorld示例中,我们定义了一个`HelloWorld`接口: ```java @WebService public interface HelloWorld { public String sayHi(String name); } ``` 这里使用了`@WebService`注解来标记这是一个WebService...
2. **基本示例**:通常会有一个简单的"Hello World"服务示例,展示如何创建一个服务端点和服务客户端,以及如何运行和测试它们。 3. **源码分析**:可能包括一些CXF核心组件的源代码,如服务器端的Dispatcher、...
"HelloWorld WebService Server" 是一个入门级的示例,旨在帮助初学者理解Web服务的工作原理,特别是服务器端的部分。在这个项目中,我们将深入探讨Web服务的概念、工作流程以及如何创建一个简单的 HelloWorld ...
本文将深入探讨如何实现CXF与Spring的整合,并提供一个最小化的依赖包配置案例,帮助初学者快速入门。 首先,CXF(Apache CXF)是一个开源的Java框架,主要用于构建和开发SOAP和RESTful Web服务。它提供了丰富的API...
通过以上步骤,我们可以完成一个基本的"HelloWorld"服务的创建和调用,从而对CXF的使用有一个初步的认识。 总结来说,Apache CXF是一个强大的Web服务框架,它提供了一套全面的工具和API,使得开发者能够方便地创建...
CXF(CXF: Composite eXtensible Framework)是一个开源的Java框架,它主要用于构建和部署Web服务。作为初学者,了解并掌握CXF Webservice的使用是进入Web服务开发的重要一步。CXF允许开发者使用Java编程语言来实现...
### 二、CXF入门教程 1. **环境准备** - 安装Java Development Kit(JDK),确保版本在1.8或以上。 - 添加CXF库到项目依赖,可以使用Maven或Gradle管理,添加相应的依赖配置。 2. **创建服务接口** 使用Java...