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

使用CXF开发WebService的笔记_服务器端的

阅读更多

使用CXF开发WebService的笔记_服务器端的

1、要实现的功能:

要实现的功能很简单,服务器端提供一个根据登陆名查询用户密码的服务,输入参数为一个String类型的,返回值也是String类型,确实很简单,简单得不能再简单了。

这里就不解释CXF是什么含义、为什么要用CXF的这些学院派的问题,不知道答案的自己去baidugoogle去查找。

 

2、实现步骤:

我们从一个空的web工程开始说起,一步一步演示如何操作和验证。

 

2.0 准备文件:

下载CXF的发布文件,下载地址是http://cxf.apache.org/download.html,我下载是的最新版本是2.2.7,解压缩之后直接进去apache-cxf-2.2.7/lib,把该目录下的jar文件单独保存起来,将来要导入到web工程中。一共有66个文件26MB多呢。

 

2.1 新建web工程 webproject,导入cxfjar文件,然后修改web.xml的文件:

<context-param>

       <param-name>contextConfigLocation</param-name>

       <param-value>classpath*:application*.xml</param-value>

    </context-param> 

    <listener>

       <listener-class>

           org.springframework.web.context.ContextLoaderListener

       </listener-class>

    </listener>

    <!—前面两个就不用多说了,下面还是我们要关注的CXF配置-->

    <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>/services/*</url-pattern>

    </servlet-mapping>

这只是序幕,下面进入服务的书写步骤了。

 

2.2 书写服务器端的服务和配置CXF

服务接口文件的代码如下:

package com.demo.service.userinfo;

 

import javax.jws.WebService;

 

@WebService  //使用jws的标注WebService

//如果不加这个标注,就不能被发布成web服务了,明白不?

public interface IUserService {

   

          public String getPassword(String loginName);

   

}

    

       服务实现类文件的代码如下

package com.demo.service.userinfo.impl;

 

import javax.jws.WebService;

 

import com.demo.service.userinfo.IUserService;

 

@WebService //使用jws的标注WebService

//如果不加这个标注,就不能被发布成web服务了,明白不?

public class UserServiceImpl implements IUserService {

 

   @Override

   public String getPassword(String loginName) {

      System.out.println("Server's getPassord() is called:"+loginName);

      return loginName+"'s password=123456";

        //这是demo程序,所以随便写,正式开发还是把调试信息去掉吧

   }

 

}

 

CXF的配置:在src配置一个文件applicationContext_cxf.xml,其内容如下:

<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:soap="http://cxf.apache.org/bindings/soap"

    xsi:schemaLocation="

       http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd

       http://cxf.apache.org/bindings/soap http://cxf.apache.org/schemas/configuration/soap.xsd

       http://cxf.apache.org/jaxws

       http://cxf.apache.org/schemas/jaxws.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" />

    <!—这三行的配置不用去检查对应的路径下是否有对应的文件,因为cxf会自动生成的-->

 

<bean id="userService" class="com.demo.service.userinfo.impl.UserServiceImpl"/>

<!—userInfoService就不用解释了,这是典型的Spring配置,开发时建议采用Spring2.5的标注 -->

 

    <jaxws:endpoint id="userWebService"

//这个要配置好,因为客户端要用到它呢,注意我用web来标识它

implementor="#userService"  //这个是引用上面的userService

address="/callUserService">

//这个是调用web服务的地址,知道我为什么用call了吧,为了易于理解,right?

    </jaxws:endpoint>

</beans>

上面的注释在我写程序时不会加这么多,第一个没有时间加,第二个也是多余的,所以建议ctrl+cctrl+v的某某同学注意一些啦,不要说我的程序有问题。

 

那现在有个问题:配置了这么多,怎么没有看到wsdl文件呢?没有wsdl文件,怎么知道做得对不对啊?根据上面的配置,访问wsdlURL是多少啊?猜猜看?

    http://127.0.0.1:8089/webproject/services/callUserService?wsdl

能想得出来访问wsdlURL的值吗?(IP地址和端口号需要自己根据实际来改) 如果不能,你要好好反思一下啦。好,我们看看我们userServicewsdl的内容。参见附件的图片。

 

 

服务端的步骤做完了吗?你觉得差不多了吧?不对,还差最后一步,就是把客户端所需要的代码导成jar文件,返回发给客户端进行调试。那我们就完成这最后一步吧。

用鼠标同时选中com.demo.service.userinfocom.demo.service.userinfo,然后:鼠标右键 —》 Export…. —》Java  > Jar file —》选中保存路径和文件名,我这里存为“ws.userinfo.jar

  • 大小: 109.3 KB
分享到:
评论

相关推荐

    cxf开发webservice客户端和服务器端文档

    cxf开发webservice客户端和服务器端 cxf(Apache CXF)是一款开源的WebService框架,用于开发webservice...使用CXF开发WebService客户端和服务器端可以提高开发效率和安全性,并且可以与其他异构系统进行互操作。

    02.CXF功能概述_CXF发展历史和使用CXF开发WebService服务器端

    【标题】"02.CXF功能概述_CXF发展历史和使用CXF开发WebService服务器端"主要探讨了Apache CXF框架在Web服务领域的应用及其发展历程,同时也涵盖了如何利用CXF来构建一个高效的WebService服务器端。 Apache CXF是一...

    使用CXF开发WebService服务器端和客户端

    本篇文章将深入探讨如何使用CXF来开发Web服务的服务器端和客户端,以及相关的重要知识点。 **1. WebService概述** WebService是一种基于XML的标准化方式,它允许不同平台、语言和操作系统之间的应用程序进行互操作...

    Webservice笔记含使用cxf和jaxws两种方式开发webservice【源代码+笔记】

    Wsdl(webservice使用说明书)重点掌握 Soap(jaxws开发webservice的传输协议)重点掌握 UDDI(了解) Webservice的使用场景分析(掌握) 学会jaxws基本开发方法(重点) Soap1.1和soap1.2区别: 跟踪soap协议 ...

    CXF-demo.zip_cxf_cxf 2.7.11 demo_cxf demo_cxf webservice demo_we

    Apache CXF是一个开源的服务框架,它允许开发人员创建和消费Web服务。CXF 2.7.11是该项目的一个版本,提供了丰富的功能和改进,包括对SOAP、RESTful服务的支持,以及WS-*规范的实现。这个"CXF-demo.zip"压缩包包含了...

    eclipse+CXF开发webService

    本文档主要介绍了使用eclipse和CXF开发webService的步骤,涵盖了准备工作、配置eclipse上的CXF插件、开发代码和生成WSDL文件等方面的内容。 一、准备工作 在开发webService之前,需要安装相关的软件环境,包括...

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

    2.用cxf开发webservice 3.这个服务端和客户端的小demo 在服务端 对外开放接口服务,然后在客户端 调用服务端的方法, 实现客户端(一个javaweb项目)对服务端(javaweb项目)方法的调用, 实际上就是发送和接收消息...

    使用CXF开发WebService

    在开发Web服务时,Apache CXF是一个非常强大的框架,它提供了与Spring的紧密集成,使得开发者可以方便地通过注解和Spring配置来暴露和消费Web服务。本篇内容将深入探讨如何使用CXF和Spring来创建和使用Web服务。 ...

    使用CXF和camel-cxf调用webservice

    本篇文章将详细介绍如何使用CXF和camel-cxf调用Web服务,以及这两个工具的核心功能和使用场景。 Apache CXF是一个全面的服务开发框架,它支持多种Web服务标准,如SOAP、WS-*协议栈、RESTful服务等。CXF提供了丰富的...

    使用cxf 开发webService 初体验

    2. **生成WSDL**:使用CXF的代码生成工具(如wsdl2java)从接口生成WSDL和Java客户端/服务器端代码。 3. **配置CXF**:在Spring配置文件中配置CXF的Servlet或Jetty服务器,以便托管Web Service。 **五、部署Web ...

    CXF开发webservice服务端

    本文将详细介绍如何使用Apache CXF框架来构建WebService服务器端,并通过实例演示整个过程。 #### 二、所需工具与环境 在开始之前,确保已准备好以下工具和资源: 1. **Apache CXF**:版本为2.2.6。 2. **Spring WS...

    webservice cxf_demo

    【标题】"webservice cxf_demo" 涉及到的是使用Apache CXF框架创建的Web服务示例项目。在Web服务的世界里,CXF是一个流行的开源工具,它支持SOAP和RESTful风格的服务,用于构建和消费Web服务。这个"CXF_demo"很可能...

    使用CXF搭建webService服务

    使用cxf搭建webService,客户端通过接口进行调用

    cxf开发webservice所用jar包

    这个标题“cxf开发webservice所用jar包”表明我们正在讨论一组CXF框架所需的JAR文件,这些文件对于利用CXF开发基于Web服务的应用程序至关重要。在描述中提到“cxf-2.4.1整合spring3.0所用jar包”,这暗示了我们使用...

    CXF(Webservice)开发手册

    CXF Webservice 开发手册

    cxf 开发webservice客户端

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

    用CXF开发webservice所用jar包

    最近用CXF开发webservice,发现老是报jar包的错误,但是又不能把所有从官网下载下来的都复制过来。官网下载的有好几十个呢,这是官网CXF的下载地址:http://cxf.apache.org/download.html。于是网上整理了一下,做个...

    WebService_CXF_x509

    【WebService_CXF_x509】是一个关于使用Apache CXF框架实现基于X.509数字证书的安全Web服务的主题。Apache CXF是一个流行的开源Java框架,用于构建和部署Web服务。X.509是一种标准格式,用于表示公钥基础设施(PKI)...

    用cxf开发webservice

    在使用CXF开发Web服务时,首先需要进行一些准备工作。通常,你需要从Apache CXF官方网站获取最新版本的库文件,包括CXF的核心库和其他相关的依赖JAR包。然后,在你的项目中配置这些库,以便CXF能正常运行。 配置...

Global site tag (gtag.js) - Google Analytics