傻大方


首页 > 知识库 > >

CXF|CXF WEB service 框架学习笔记


按关键词阅读: 笔记 学习 框架 service 框架学习笔记 web CXF

1、http:/cxf.apache.org/docs/index.htmlhttp:/cxf.apache.org/注意 , 在非java-project中 , 例如在web-project中可能出现(activation.jar和mail.jar)与工程中的j2ee.jar以及myeclipse中D:MyEclipse 5.5.1 GAmyeclipseeclipsepluginscom.genuitec.eclipse.j2eedt.core_5.5.1datalibrarysetEE_5的javaee.jar里面的同名包发生冲突 , 建议把j2ee.jar和javaee.jar中的同名包删除 , 或者直接 。

2、使用J2ee.jar把eclipse自带的javaee.jar从工程中去除并加入相应的包1. WSDL2JAVA生成客户端代码2. JAXB3. JAX-WS4. WS-Addressing5. WS-Policy6. WS-Security7. webservice 注释8. 拦截器WSDL2JAVA生成客户端代码CXF支持代码生成1)Java to WSDL 、2)WSDL to Java 、3)XSD to WSDL 、4)WSDL to XML 5)WSDL to SOAP 、6)WSDL to service 如下:D:apache-cxf-2.2.5binwsdl2java -d。

3、d:/cxf-client -p example1.client http:/127.0.0.1:8080/ws/HelloWorld?wsdlJAXBhttp:/www.uushare.com/group/10141/topic/12028CXF默认的数据绑定使用的JAXB , XFIRE使用Aegis替代数据绑定就是把java对象转化为xml和把xml文件转化为java对象不管使用任何的XML解析代码库(dom4j等) , 对于xml只是一个解析工作而已 , 不能马上绑定到java 对象 。
对于对象 , 每次都需要set 或者get相应的属性 , 当然也可以使用map 来保存xml配置 。
于是 , 一种新的处理方式 。

4、用于对象和xml之间的映射就变得非常需要 , 还好sun提供了jaxb , 一种很方便的方式来处理java对象和xml内容其中的xjc po.xsd能把xsd中定义的java结构转换为java类 , 这有点像xmlbeans的scompJAX-WShttps:/jax-ws.dev.java.net/http:/java.sun.com/webservices/docs/2.0/tutorial/doc/index.htmlJAX-WS规范是一组XML web services的JAVA API (官方:JAX-RPC 2.0 renamed to JAX-WS 2.0)在 JAX-WS中 , 一个远程调用可 。

5、以转换为一个基于XML的协议例如SOAP 。
在使用JAX-WS过程中 , 开发者不需要编写任何生成和处理SOAP消息的代码 。
JAX-WS的运行时实现会将这些API的调用转换成为对于SOAP消息 。
在服务器端 , 用户只需要通过Java语言定义远程调用所需要实现的接口SEI (service endpoint interface) , 并提供相关的实现 , 通过调用JAX-WS的服务发布接口就可以将其发布为WebService接口 。
在客户端 , 用户可以通过JAX-WS的API创建一个代理(用本地对象来替代远程的服务)来实现对于远程服务器端的调用 。
通过web service所提供的互操作环境 , 我们可以用JAX-WS轻松 。

6、实现JAVA平台与其他编程环境(.net等)的互操作 。
JAX-WS与JAX-RPC之间的关系Sun最开始的web services的实现是JAX-RPC 1.1 (JSR 101) 。
这个实现是基于Java的RPC,并不完全支持schema规范 , 同时没有对Binding和Parsing定义标准的实现 。
JAX-WS2.0 (JSR 224)是Sun新的web services协议栈 , 是一个完全基于标准的实现 。
在binding层(xml2java对象) , 使用的是the Java Architecture for XML Binding (JAXB, JSR 222) , 在parsing层 , 使用的是th 。

7、e Streaming API for XML (StAX, JSR 173) , 同时它还完全支持schema规范 。
1客户端开发者通过URL得到WSDL文件(通过HTTP访问可以得到http:/?wsdl)2客户端根据WSDL的描述 , 生成相关client接口代理方法,通过HTTP POST发送SOAP消息给服务器端 。
3服务器端Listener接受到SOAP请求消息,对JAVA来说,通常是一个servlet或者EJB 。
Listener把消息转发给 Dispatcher,有时候listener和Dispatcher也可能是同一个类 。
Dispatcher会把请求消息交给WebService的运行终端 。


8、4,这时候,服务器端会将HTTP request转成服务器端的消息类型,形成javax.xml.ws.handler.MessageContext,并处理SOAP消息的头信息,如mustUnderstand 。
5,如果在服务器端配置了handler,会调用handler的handleMessage方法,通常用handler来承储消息,解密或者保证消息到达的顺序 。
handler通过在HandlerChain标注配置,handlers.xml文件内容为:WSSOAPHandlercom.cxf.test.WSSOAPHandlerWSHandlercom.cxf.test.WSHandler6,SO 。

9、AP消息被反序列化为JAVA对象,传到真正的实现业务的类 。
7,调用真正的业务方法,执行后利用JAXB注解序列化成SOAP返回消息 。
8,如果配置了handler,会调用handler的handleMessage方法 。
如果业务方法有异常抛出,把异常转为SOAP fault 消息 。
9,Listener通过HTTP把response返回给客户端 。
JAX-WS的客户端调用分为proxy方式以及dispatch方式URL wsdlURL = new URL(file:/D:/ wsdl/prjCXFWeb.wsdl);
QName serviceQName = new QName(http:/test.cx 。

10、f.bt.com/, WSCXFProviderService);
QName portQName = new QName(http:/test.cxf.bt.com/, WSCXFProviderPort);
Service service = Service.create(wsdlURL, serviceQName);
WSCXFProvider port = (WSCXFProvider) service.getPort(portQName, WSCXFProvider.class);


来源:(未知)

【学习资料】网址:/a/2021/0406/0021864504.html

标题:CXF|CXF WEB service 框架学习笔记


上一篇:农村中小学|农村中小学现代远程教育工程项目学校管理人员管理办法

下一篇:税收|税收 外文翻译 外文文献 英文文献 企业税收筹划的主要途径