WebService CXF学习笔记

声明:此博客为本人的学习笔记,内容有待整理。偶然看到的网友不要以此作为开发依据,技术大牛直接绕过!

 

=========================================
开发WebService服务端

CXF内置了一个Jetty Web服务器

每个WebService组件需要2个部分:接口和实现类
1)开发一个WebService业务接口
接口需要用@WebService修饰

2)开发一个WebService实现类
实现类也要用@WebService修饰,必须添加参数
比如@WebService(endPointInterface="com.spc.cxf.ws.HelloWord",)

3)发布接口,供远程客户端调用
创建类,在main方法中调用Endpoint.publish()方法
例如:
Endpoint.publish(address);


添加jar包:
geronimo-servlet
jetty-http
commons-log
cxf-core
wsdl4j
sxmlschema-core

==========================================
开发WebService客户端
1)使用CXF提供的wsdl2java工具,从wsdl生成客户端的Java代码

2)在客户端代码中,找到一个继承了Service的类。
该类的实例可以当成工厂来使用

3)调用Service子类实例的getXxxPort()方法,返回远程WebService的代理。

===========================================
===========================================
形参、返回值
1、当形参、返回值的类型是String、基本数据类型时,CXF肯定可以轻松的处理。
2、当形参、返回值的类型是JavaBean形式的复合类,List集合,数组等形式,CXF能处理。
3、对于Map、非JavaBean式的复合类,CXF处理不了。


==============================================
XML里的两个属性
targetNamespace—相当于java语言的package
xmlns—相当于Java语言的import

==============================================
WSDL文档
1、Web Service接口

2、Web Service实现
<wsdl:definitions name="" targerNamespace="">
<wsdl:types>
</wsdl:types>
<wsdl:message name="">
</wsdl:message>
<wsdl:portType name=""></wsdl:portType>
</wsd:definitionsl>

1)types元素内容就是Schema文档
2)2N个message元素
3)portType,接口中定义的方法(个数)


==============================================
WebService的三个技术基础
1、WSDL
Web Service Definition Language
2、SOAP

3、UDDI


一次Web Service的调用,不是方法的调用,而是发送SOAP消息(即是XML文档片段)

对于sayHello操作来说,
传入的消息,是sayHello元素
<sayHello>
 <arg0>字符串</arg0>
</sayHello>

传出的消息,是sayHelloResponse元素
<sayHelloResponse>
 <return>字符串</return>
</sayHelloResponse>

 

 


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值