A Provider-based endpoint can receive data in javax.xml.transform.Source, javax.activation.DataSource or javax.xml.soap.SOAPMessage formats. It can work in either payload or message mode. JAX-WS specification has a conformance requirement (Provider support required) that defines the combinations of the Provider type, the mode and SOAP/HTTP or XML/HTTP binding. Additionally, the message on the service endpoint may be received as SOAP message (does not matter 1.1 or 1.2) or a mime multipart message. The table below summarizes the requirement with all the possible combinations.
|
XML/HTTP |
SOAP/HTTP |
Provider<Source>
|
Payload |
Primary part or content as Source |
SOAP Body from the primary part or SOAP Body as Source |
Message |
Primary part or content as Source |
SOAP Envelope from the primary part or SOAP Envelope as Source |
Provider<DataSource>
|
Payload |
Not Valid [1] |
Not Valid [1] |
Message |
DataSource as an object |
Not Valid [2] |
Provider<SOAPMessage>
|
Payload |
Not Valid [3] |
Not Valid [3] |
Message |
Not Valid [4] |
SOAPMessage as an object |
Provider<Source> may receive a mime multipart message or an XML message. If it is a mime multipart message, then the primary part for XML/HTTP and SOAP Envelope for SOAP/HTTP is extracted and converted to the Source for payload mode. The primary part, in the case of mime multipart message, must contain XML data for XML/HTTP binding. If it is an XML message then the content for XML/HTTP (irrespective of mode) is converted to the Source. The XML message is converted to SOAP message and SOAP Body or Envelope for SOAP/HTTP (depending upon the mode) is converted to the Source.
[1] Provider<DataSource> is used for sending attachments and thus payload mode is not valid.
[2] Provider<DataSource> in SOAP/HTTP is not valid since attachments in SOAP are sent using Provider<SOAPMessage>.
[3] Provider<SOAPMessage> in payload mode is not valid because the entire SOAPMessage is received, not just the payload which corresponds to the body of the SOAPMessage.
[4] Provider<SOAPMessage> in message mode using XML/HTTP binding is not valid since the client may have sent an XML message that may not be SOAP.
Provider<Source>-based endpoints using XML/HTTP binding allows you to develop and deploy RESTful Web services with JAX-WS 2.0.
分享到:
相关推荐
Frontends:CXF 支持多种“Frontend”编程模型,CXF 实现了 JAX-WS API (遵循 JAX-WS 2.0 TCK 版本),它也包含一个“simple frontend”允许客户端和 EndPoint 的创建,而不需要 Annotation 注解。CXF 既支持 WSDL ...
在本学习笔记中,我们将深入探讨Web服务的核心概念、技术栈以及实际案例。 一、Web服务的核心概念 1. **SOAP (Simple Object Access Protocol)**:SOAP是一种基于XML的协议,用于交换结构化信息,是Web服务的基础...
在本篇WebService学习笔记中,我们将探讨几个关键的概念和技术,包括SOAP协议、JAX-WS、WSDL文档以及一些常用的Web服务框架。 首先,SOAP(Simple Object Access Protocol)是一种基于XML的协议,用于在分布式环境...
1. "webservice学习笔记.docx":这可能是一份详细的学习指南,涵盖了Web服务的基本概念、JAX-WS的使用方法,以及案例的具体步骤。文档中可能会有理论解释、代码示例和调试技巧等内容。 2. "jaxwsServer":这部分可能...
Web Service 即 web 服务,它是一种跨编程语言和跨操作系统平台的远程调用技术。 Java 中共有三种 Web Service 规范: - JAX-WS(JAX-RPC): 基于 xml 数据 - JAXM&SAAJ - JAX-RS:基于 xml 或 json 数据
Web Service入门学习笔记 Web Service是一种基于互联网的、平台无关的通信协议,它允许不同系统间的应用程序通过网络互相调用,实现数据交换和服务共享。在本文中,我们将深入探讨Web Service的基本概念,以及如何...
【CXF笔记】是关于Apache CXF框架的深入学习记录,这个笔记可能涵盖了CXF的基本概念、使用方法、源码解析以及与开发工具的结合应用。Apache CXF是一个开源服务框架,它允许开发者构建和消费各种Web服务。下面将详细...
它提供了全面的JAX-WS(Java API for XML Web Services)支持,允许开发者轻松地发布和使用Web服务。CXF不仅支持多种Binding、DataBinding、Transport方式,还能够处理各种数据格式,极大地增强了Web服务的灵活性和...
4. **Web服务**:J2EE支持SOAP和RESTful Web服务,可能会讲解如何使用JAX-WS和JAX-RS来创建和消费这些服务。 5. **JDBC与数据库交互**:Java数据库连接(JDBC)是Java中访问数据库的标准API,学习笔记可能会涵盖...
当我们谈论“Axis2,CXF版本学习笔记”时,这通常涉及到两个主要的Java Web服务框架:Apache Axis2和Apache CXF。这两个框架都用于构建和部署SOAP(简单对象访问协议)和RESTful(Representational State Transfer)...
本学习笔记旨在提供对Apache CXF的基本理解、功能特性和实际操作指导。 **1. CXF 简介** 1.1 CXF概述 Apache CXF是一个全面的服务开发框架,它允许开发者创建和部署各种类型的Web服务,包括基于SOAP、RESTful、WS-...
本学习笔记涵盖了JavaEE的核心技术,帮助学习者深入理解和掌握javaweb的各项技能。 1. **Servlet与JSP** - **Servlet**:Servlet是Java编写的服务器端程序,主要用于扩展服务器的功能。在JavaEE中,Servlet处理...
- **JAX-WS和JAX-RS**:JAX-WS是Java中处理SOAP Web服务的标准API,JAX-RS则是处理RESTful服务的标准API。 - **UDDI的作用**:UDDI目录服务允许服务提供商注册他们的Web服务,让服务消费者能够查找并找到需要的服务...
这部分可能涉及JAX-WS和JAX-RS规范,以及如何使用工具如CXF或Jersey来创建和消费这些服务。 再者,笔记可能深入到数据持久化,即JPA(Java Persistence API)和Hibernate的使用,它们为Java应用程序提供了对象关系...
7. **Web服务(SOAP和RESTful)**:这部分可能会涉及如何使用J2EE开发SOAP(简单对象访问协议)和RESTful风格的Web服务,包括WSDL、JAX-WS和JAX-RS等相关技术。 8. **容器管理和服务**:J2EE容器(如Tomcat、...
学习燕青的WebService笔记,将有助于理解Web Service的工作原理、如何设计和实现服务,以及如何在实际项目中应用这些技术。无论是开发人员还是系统架构师,对Web Service的理解都是构建分布式系统和企业级应用的关键...
这份压缩包很可能包含了一位开发者在使用CXF开发Web服务过程中的学习笔记,可能包括了以下内容: - **基础教程**:介绍如何搭建CXF环境,创建第一个Web服务。 - **案例研究**:通过实际项目阐述如何设计和实现复杂的...
9. **Web服务**:J2EE支持通过Java API for XML Processing (JAX-WS)和Java API for RESTful Web Services (JAX-RS)创建和消费Web服务。 10. **容器和服务**:J2EE服务器提供了一系列的容器,如Web容器和EJB容器,...