- 浏览: 185152 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
yu505656166:
这个问题是怎么解决的啊?
spring mail 发送邮件,没有主题,没有收件人,显示乱码问题 -
dextersmake:
我的配置和你的差不多,调了有一些效果,但是还不是很满意。
YARN内存使用优化配置 -
kjkhi:
dxb350352 写道怎么用啊,运行完了也不知道取值的方法 ...
Apache POI组件使用eventusermodel模式读取Excel文档内容 -
dxb350352:
怎么用啊,运行完了也不知道取值的方法
Apache POI组件使用eventusermodel模式读取Excel文档内容 -
wanshijian:
相同问题,解决了!
使用cxf的wsdl2java是遇到的问题
CXF详解二
CXF之JAX-WS
JAX-WS规范是一组XML web services的JAVA API。JAX-WS允许开发者可以选择RPC-oriented或者message-oriented 来实现自己的web services。在 JAX-WS中,一个远程调用可以转换为一个基于XML的协议例如SOAP。在使用JAX-WS过程中,开发者不需要编写任何生成和处理SOAP消息的代码。JAX-WS的运行时实现会将这些API的调用转换成为对于SOAP消息。
在服务器端,用户只需要通过Java语言定义远程调用所需要实现的接口SEI (service endpoint interface),并提供相关的实现,通过调用JAX-WS的服务发布接口就可以将其发布为WebService接口。
在客户端,用户可以通过JAX-WS的API创建一个代理(用本地对象来替代远程的服务)来实现对于远程服务器端的调用。
通过web service所提供的互操作环境,我们可以用JAX-WS轻松实现JAVA平台与其他编程环境(.net等)的互操作。
JAX-WS annotation
主要常用接口:
Oneway |
只有输入值,无返回值 |
WebMethod |
对方法进行注解 |
WebParam |
对输入参数进行注解 |
WebResult |
对返回数据进行注解 |
WebService |
注解一个web服务 |
@WebService,必选的标注。用于导出的服务接口及其实现类
name |
定义导出的服务接口的名字,对应于WSDL文档中wsdl:portType。默认是服务接口的Java类名加PortType |
targetNamespace |
定义导出的服务接口的名域(namespace),默认是倒置的服务接口Java包名。如demo.cxf.UserService的名域将会是http://cxf.demo/ |
serviceName |
定义服务名,与名域一起唯一标识一个服务。默认是其Java类名 |
wsdlLocation |
其WSDL文档URL。可由服务器容器自动产生 |
endpointInterface |
指定服务接口的Java类。通常用于服务实现类的标注。应当指定类的全名,如demo.cxf.UserService |
portName |
对应WSDL文档中的wsdl:port元素。默认是Java类名加Port |
@WebMethod,可选的标注,用于服务接口的方法
operationName |
指定方法在WSDL文档中的名字,客房端用此名字调用方法 |
action |
Specifies the value of the soapAction attribute of the soap:operation element generated for the method. The default value is an empty string. |
exclude |
生成WSDL文档时将该方法排除在外 |
@SOAPBinding,可选的标注,用于指定生成的SOAP定义文档风格。关于此标注再详细的信息请查阅SOAP标准等参考资料
style |
Style.DOCUMENT (默认) Style.RPC |
SOAP消息风格 |
use |
Use.LITERAL (默认) Use.ENCODED |
SOAP数据编码方式 |
parameterStyle |
ParameterStyle.BARE ParameterStyle.WRAPPED (默认) |
Specifies how the method parameters, which correspond to message parts in a WSDL contract, are placed into the SOAP message body. A parameter style of BARE means that each parameter is placed into the message body as a child element of the message root. A parameter style of WRAPPED means that all of the input parameters are wrapped into a single element on a request message and that all of the output parameters are wrapped into a single element in the response message. If you set the style to RPC you must use the WRAPPED parameter style. |
@RequestWrapper,可选的标注,用于指定如何包装客户端调用服务方法使用的参数
@ResponseWrapper,可选的标注,用于指定如何包装客户端调用服务方法的返回值
@WebFault,可选的标注,用于注解服务接口方法抛出的异常
name |
异常的名字 |
targetNamespace |
对应的名域,默认是服务接口的名域 |
faultName |
实现该异类的类名 |
@WebParam,可选的标注,用于指定方法参数的使用方式
name |
在WSDL文档中的名字,默认是arg0,arg1… |
targetNamespace |
对应的名域。默认是服务接口的名域 |
mode |
Mode.IN (默认)、Mode.OUT、Mode.INOUT 对于Java程序没有意义 |
header |
true或者false(默认),指定该参数是否在SOAP消息头部发送 |
partName |
Specifies the value of the name attribute of the wsdl:part element for the parameter when the binding is document. |
@WebResult,可选的标注,用于指定返回值的使用方式
name |
返回值在WSDL文件中的名字。默认是return |
targetNamespace |
对应的名域。默认是服务接口的名域 |
header |
true或者false(默认),指定该参数是否在SOAP消息头部发送 |
partName |
Specifies the value of the name attribute of the wsdl:part element for the parameter when the binding is document. |
具体请参考j2EE API是如下两个包:
² javax.jws
² javax.jws.soap
JAX-WS Dispatch API
客户端开发者可以使用JAX‐WS 规范中定义的javax.xml.ws.Dispatch API。这是一个低层API,它要求客户端将消息或消息的有效负载(payload)构造成XML,并且要求精通期望的信息或负载的结构。这在客户端希望操作XML 消息层时非常有用。
可以通过调用Service 接口的任何一个createDispatch(...) 方法来获得javax.xml.ws.Dispatch 的实例。
1、Dispatch对象有两个使用模型:
l 消息模型
l 负载模型
ü 消息模型
在消息模型中,一个Dispatch对象要使用一个完整的消息。完整的消息包括头与包装器。
为Despatch对象指定使用消息模型,当创建Dispatch对象时,要提供java.xml.Service.Mode.MESSAGE值。
ü 负载模型
在负载模型中,Dispatch对象仅使用消息负载(消息体body)。
为Despatch对象指定使用负载模型,当创建Dispatch对象时,要提供java.xml.ws.Service.Mode.PAYLOAD值.
2 、Data Types(数据类型)
Dispatch对象,因为它们是低级别的对象,使用相同的JAXB生成的高级别的消费者API是不被优化的。
Dispatch对象使用下面几个类型:
l `
l javax.activation.DataSource
l JAXB
3、参考:
² http://blog.csdn.net/fhd001/archive/2010/08/01/5780840.aspx
² http://man.lupaworld.com/content/develop/JDK_6.0_API_html_zh_CN/html/zh_CN/api/javax/xml/ws/class-use/Dispatch.html
http://www.myexception.cn/software-architecture-design/645730.html
发表评论
-
大数据处理--倒排索引
2014-06-28 14:08 4404简介 倒排索引源 ... -
大数据处理--BitSet
2014-06-28 11:01 1252java.util.BitSet可以按位存储。计算机中一个字 ... -
大数据处理--BloomFilter
2014-06-28 10:58 918BloomFilter——大规 ... -
hadoop 2.x升级异常
2014-06-19 11:54 22891、通过FileSystem这个API去访问hdfs上面的 ... -
Windows 编译Hadoop的Eclipse插件
2013-07-24 00:53 0http://www.cnblogs.com/fly ... -
log4j指定配置文件路径
2013-07-09 11:15 1941在默认情况下 log4j 会从WEB-INF/cl ... -
使用CXF发布和调用webservice
2013-05-08 16:14 1405依赖的JAR cxf-2.2.10.jar je ... -
Filter、Servlet、Listener区别与联系
2013-04-10 17:41 4188J2EE开发中,经常会使用到Filter、Servlet、L ... -
Apache POI组件使用eventusermodel模式读取Excel文档内容
2013-03-18 17:39 9125package com.test; import ja ... -
分析tomcat假死现象的过程
2012-10-15 15:50 0前段时间在公司遇到一个tomcat运行一段时间后(半个月左右 ... -
spring mail 通过HTTP代理发送邮件
2012-09-24 16:22 6674spring框架中org.spr ... -
多线程实现发送邮件功能
2012-09-14 18:44 11201通过Internet发送邮件,可能会在网络传输上面使用较多的 ... -
使用Spring mail通过socks代理发送邮件
2012-09-14 18:25 7145Spring框架提供了JavaMailSender接口及其实 ... -
plupload 上传组件,后台用java实现
2012-09-06 17:21 11497Plupload 是一个Web浏览器上的界面友好的文件上传模 ... -
POI读取大数据量的Excel文件
2012-09-06 11:58 15074POI读取Excel文件有两种方式,一种是使用usermod ... -
UML类图
2012-08-02 16:35 2049UML类图关系大全 1、关联双向关联:C1-C2:指 ... -
使用cxf的wsdl2java是遇到的问题
2012-03-13 10:50 3920对与同一个wsdl文件,我尝试过使用axis2是可以正常转过来 ... -
spring mail 发送邮件,没有主题,没有收件人,显示乱码问题
2012-03-06 14:02 4707使用spring框架风中的javamail发送邮件,遇到了一些 ... -
J2EE使用ireport做导出PDF操作
2012-03-02 17:21 2699首先,在lib中,加入一下jar: jasperreport ... -
Struts使用plupload实现多文件上传
2012-03-02 17:06 2561plupload,一个挺不错js框架。到时其官方demo中只是 ...
相关推荐
CXF框架提供了丰富的功能,包括SOAP、RESTful API、JAX-RS和JAX-WS等标准的实现。然而,在某些情况下,尤其是在使用Java 6的环境中,可能会遇到与内置JAXB(Java Architecture for XML Binding)库的兼容性问题。...
Java API for XML Web Services(JAX-WS)是Java平台上用于构建和消费Web服务的标准API。它简化了创建和使用Web服务的过程,使得开发者能够通过SOAP消息与远程服务进行交互。JAX-WS允许开发者将服务接口直接映射到...
- `provider.jar`: 这可能是一个JAX-RS或JAX-WS的具体实现,如Jersey或Apache CXF,提供了服务的运行时环境。 **使用步骤:** 1. 下载并解压压缩包。 2. 将解压后的四个jar文件导入到IDE的项目构建路径中。 3. ...
开发者可以使用诸如Apache CXF、Metro等开源框架来支持JAX-WS的开发,这些框架提供了更多的功能,如WS-Security、WS-Policy等扩展,同时简化了开发过程。 8. **示例** 在提供的链接...
JAX-WS 2.0 API通常由Java EE服务器提供实现,例如Sun的Metro或Apache CXF。`jaxws-2_0-pfd-spec-api.jar`可能包含了JAX-WS 2.0规范的API类库,供开发者在应用中导入并使用。在实际开发中,还需要相应的实现库,如`...
CXF是JAX-WS的一个实现框架,它扩展了基本的JAX-WS功能,提供了更多的特性和便利性。CXF不仅支持SOAP,还支持RESTful API,以及多种协议和数据格式,如HTTP、HTTPS、JMS等。它也包含了丰富的工具集,用于生成客户端...
logging-1.1.1.jar,cxf-2.7.6.jar,cxf-manifest.jar,cxf-services-sts-core-2.7.6.jar,cxf-services-ws-discovery-api-2.7.6.jar,cxf-services-ws-discovery-service-2.7.6.jar,cxf-services-wsn-api-2.7.6.jar,cxf-...
jax-ws方式的webservice服务,基于xml的webservice开发,资料很全面很珍贵,大师所写的书籍,真心不贵
文件"java webservice CXF JAX-WS(SOAP) + JAX-RS(RESTfull).docx"可能包含了具体的示例代码和详细步骤,帮助理解如何在SSH环境中集成并使用CXF和JAX-RS。建议参考文档中的内容进行实践操作,以加深理解。 总的来说...
9. **安全与认证**: JAX-WS可以通过SSL/TLS加密、WS-Security、WS-Trust等标准实现Web服务的安全性,确保数据传输的机密性和完整性。 10. **工具支持**: 开发者可以使用诸如Apache CXF、Metro等JAX-WS实现工具,...
【CXF_Spring.part1.rar】和【CXF_Spring源码.rar】文件可能涉及Apache CXF,这是一个流行的开源框架,它扩展了JAX-WS,提供更高级的功能,如WS-*协议支持、基于注解的编程模型、以及与Spring的深度集成。学习CXF...
此外,由于其标准化,JAX-WS还兼容各种Web服务框架,如Apache CXF和Metro。 **五、JAX-WS的未来** 随着微服务架构和RESTful API的普及,JAX-WS在某些场景下可能不再是首选的Web服务技术。然而,对于需要SOAP通信...
**JAX-WS + Spring 实现Web Service示例** 在现代企业级应用开发中,Web Service作为一种跨平台、跨语言的通信方式,被广泛用于不同系统间的交互。本示例将详细阐述如何利用Java API for XML Web Services (JAX-WS)...
标题中的"axis-jax-ws-xfire.rar_jax"提到了三个关键术语:Axis、JAX-WS和XFire,这些都是与Java Web服务(Web Service)开发密切相关的技术。让我们详细了解一下这些概念及其在Java环境中的应用。 1. **Axis**: ...
- **WS-I Basic Profile**:这是一个关于如何正确使用SOAP和WS-*标准的指南,以实现跨平台互操作性。 - **WS-Security**:该标准为Web服务提供了一种安全机制,如数字签名和加密。 - **WS-Addressing**:这是一种...
3. **互操作性**:由于CXF实现了多种Web服务标准,如WSDL、XSD、WS-I、WS-Security等,它具有良好的与其他Web服务系统交互的能力,有助于实现跨平台、跨语言的互操作性。 4. **模块化设计**:CXF由多个模块组成,...
2. **服务模型**:CXF支持多种服务模型,包括JAX-WS(Java API for XML Web Services)和JAX-RS(Java API for RESTful Web Services)。这些模型允许开发者用Java语言创建和消费Web服务。 3. **数据绑定**:CXF...
2. **工具** - 可能提到了一些辅助工具,如Apache CXF或Metro,这些是常见的JAX-WS实现框架,用于简化开发工作。 **文件名解析:** 由于只有一个文件名"jax-ws基于web容器发布webServer",这可能是博客文章的HTML...
JavaWeb服务SOAP(jax-ws)和REST(jax-rs)规范,CXF整合Spring和未整合Spring的简单例子。结合说明看,简单易懂:my.oschina.net/lock0818/blog/314120