Jump To Close Expand all Collapse all Table of contents Apache CXF 开发指南 使开源包含更多 I. 编写 WSDL 合同 Expand section "I. 编写 WSDL 合同" Collapse section "I. 编写 WSDL 合同" 1. WSDL 合同简介 Expand section "1. WSDL 合同简介" Collapse section "1. WSDL 合同简介" 1.1. WSDL 文档的结构 1.2. WSDL 元素 1.3. 设计合同 2. 定义逻辑数据单元 Expand section "2. 定义逻辑数据单元" Collapse section "2. 定义逻辑数据单元" 2.1. 逻辑单元简介 2.2. 将数据映射到逻辑数据单元 2.3. 在合同中添加数据单元 2.4. XML 架构简单类型 2.5. 定义复杂数据类型 Expand section "2.5. 定义复杂数据类型" Collapse section "2.5. 定义复杂数据类型" 2.5.1. 定义数据结构 2.5.2. 定义数组 2.5.3. 通过扩展定义类型 2.5.4. 根据限制定义类型 2.5.5. 定义枚举类型 2.6. 定义元素 3. 定义服务使用的逻辑消息 4. 定义逻辑接口 II. Web 服务绑定 Expand section "II. Web 服务绑定" Collapse section "II. Web 服务绑定" 5. 了解 WSDL 中的绑定 6. 使用 SOAP 1.1 消息 Expand section "6. 使用 SOAP 1.1 消息" Collapse section "6. 使用 SOAP 1.1 消息" 6.1. 添加 SOAP 1.1 绑定 6.2. 在 SOAP 1.1 Binding 中添加 SOAP 标头 7. 使用 SOAP 1.2 消息 Expand section "7. 使用 SOAP 1.2 消息" Collapse section "7. 使用 SOAP 1.2 消息" 7.1. 将 SOAP 1.2 绑定添加到 WSDL 文档 7.2. 将标头添加到 SOAP 1.2 消息 8. 使用带有附件的 SOAP 发送二进制数据 9. 使用 SOAP MTOM 发送二进制数据 Expand section "9. 使用 SOAP MTOM 发送二进制数据" Collapse section "9. 使用 SOAP MTOM 发送二进制数据" 9.1. MTOM 概述 9.2. 注解数据类型以使用 MTOM 9.3. 启用 MTOM Expand section "9.3. 启用 MTOM" Collapse section "9.3. 启用 MTOM" 9.3.1. 使用 JAX-WS API 9.3.2. 使用配置 10. 使用 XML 文档 III. Web 服务传输 Expand section "III. Web 服务传输" Collapse section "III. Web 服务传输" 11. 了解 WSDL 中如何定义端点 12. 使用 HTTP Expand section "12. 使用 HTTP" Collapse section "12. 使用 HTTP" 12.1. 添加基本 HTTP 端点 12.2. 配置一个 Consumer Expand section "12.2. 配置一个 Consumer" Collapse section "12.2. 配置一个 Consumer" 12.2.1. HTTP 消费者端点的机制 12.2.2. 使用配置 12.2.3. 使用 WSDL 12.2.4. 消费者缓存控制指令 12.3. 配置服务提供商 Expand section "12.3. 配置服务提供商" Collapse section "12.3. 配置服务提供商" 12.3.1. HTTP 服务提供商的机制 12.3.2. 使用配置 12.3.3. 使用 WSDL 12.3.4. Service Provider Cache Control Directives 12.4. 配置 Undertow 运行时 12.5. 配置 Netty 运行时 12.6. 以 Decoupled 模式使用 HTTP 传输 13. 使用 SOAP over JMS Expand section "13. 使用 SOAP over JMS" Collapse section "13. 使用 SOAP over JMS" 13.1. 基本配置 13.2. JMS URI 13.3. WSDL 扩展 14. 使用通用 JMS Expand section "14. 使用通用 JMS" Collapse section "14. 使用通用 JMS" 14.1. 配置 JMS 的方法 14.2. 使用 JMS 配置 bean 14.3. 优化客户端 JMS 性能 14.4. 配置 JMS 事务 14.5. 使用 WSDL 配置 JMS Expand section "14.5. 使用 WSDL 配置 JMS" Collapse section "14.5. 使用 WSDL 配置 JMS" 14.5.1. JMS WSDL 扩展名称spance 14.5.2. 基本 JMS 配置 14.5.3. JMS 客户端配置 14.5.4. JMS 供应商配置 14.6. 使用命名的 Reply Destination 15. 与 Apache ActiveMQ 集成 16. conduits IV. 配置 Web 服务端点 Expand section "IV. 配置 Web 服务端点" Collapse section "IV. 配置 Web 服务端点" 17. 配置 JAX-WS 端点 Expand section "17. 配置 JAX-WS 端点" Collapse section "17. 配置 JAX-WS 端点" 17.1. 配置服务提供商 Expand section "17.1. 配置服务提供商" Collapse section "17.1. 配置服务提供商" 17.1.1. 配置服务提供商的元素 17.1.2. 使用 jaxws:endpoint Element 17.1.3. 使用 jaxws:server Element 17.1.4. 在服务提供商中添加功能 17.1.5. 在 JAX-WS 端点上启用架构验证 17.2. 配置消费者端点 18. 配置 JAX-RS 端点 Expand section "18. 配置 JAX-RS 端点" Collapse section "18. 配置 JAX-RS 端点" 18.1. 配置 JAX-RS 服务器端点 Expand section "18.1. 配置 JAX-RS 服务器端点" Collapse section "18.1. 配置 JAX-RS 服务器端点" 18.1.1. 定义 JAX-RS 服务器端点 18.1.2. jaxrs:server Attributes 18.1.3. jaxrs:server Child Elements 18.2. 配置 JAX-RS 客户端端点 Expand section "18.2. 配置 JAX-RS 客户端端点" Collapse section "18.2. 配置 JAX-RS 客户端端点" 18.2.1. 定义 JAX-RS 客户端端点 18.2.2. jaxrs:client 属性 18.2.3. jaxrs:client Child Elements 18.3. 使用 Model Schema 定义 REST 服务 19. Apache CXF Logging Expand section "19. Apache CXF Logging" Collapse section "19. Apache CXF Logging" 19.1. Apache CXF Logging 概述 19.2. 使用日志记录的简单示例 19.3. 默认日志记录配置文件 Expand section "19.3. 默认日志记录配置文件" Collapse section "19.3. 默认日志记录配置文件" 19.3.1. 日志配置概述 19.3.2. 配置日志记录输出 19.3.3. 配置日志记录级别 19.4. 在命令行中启用日志记录 19.5. 子系统和服务的日志 19.6. 日志记录消息内容 20. 部署 WS-Addressing Expand section "20. 部署 WS-Addressing" Collapse section "20. 部署 WS-Addressing" 20.1. WS-地址简介 20.2. WS-Addressing Interceptors 20.3. 启用 WS-Addressing 20.4. 配置 WS-Addressing 属性 21. 启用可靠的消息传递 Expand section "21. 启用可靠的消息传递" Collapse section "21. 启用可靠的消息传递" 21.1. WS-RM 简介 21.2. WS-RM Interceptors 21.3. 启用 WS-RM 21.4. 运行时控制 21.5. 配置 WS-RM Expand section "21.5. 配置 WS-RM" Collapse section "21.5. 配置 WS-RM" 21.5.1. 配置 Apache CXF-Specific WS-RM 属性 21.5.2. 配置标准 WS-RM 策略属性 21.5.3. WS-RM 配置用例 21.6. 配置 WS-RM Persistence 22. 启用高可用性 Expand section "22. 启用高可用性" Collapse section "22. 启用高可用性" 22.1. 高可用性简介 22.2. 使用静态故障切换启用 HA 22.3. 使用静态故障切换配置 HA 23. Apache CXF 绑定 ID A. 使用 Maven OSGi 工具 Expand section "A. 使用 Maven OSGi 工具" Collapse section "A. 使用 Maven OSGi 工具" A.1. Maven 捆绑包插件 A.2. 设置红帽 Fuse OSGi 项目 A.3. 配置捆绑包插件 V. 使用 JAX-WS 开发应用程序 Expand section "V. 使用 JAX-WS 开发应用程序" Collapse section "V. 使用 JAX-WS 开发应用程序" 24. 向上更新服务开发 Expand section "24. 向上更新服务开发" Collapse section "24. 向上更新服务开发" 24.1. JAX-WS 服务开发简介 24.2. 创建 SEI 24.3. 注解代码 Expand section "24.3. 注解代码" Collapse section "24.3. 注解代码" 24.3.1. JAX-WS 注释概述 24.3.2. 所需的注解 24.3.3. 可选注解 24.3.4. Apache CXF 注解 Expand section "24.3.4. Apache CXF 注解" Collapse section "24.3.4. Apache CXF 注解" 24.3.4.1. WSDL 文档 24.3.4.2. @WSDL 文档属性 24.3.4.3. 使用 @WSDL 文档 24.3.4.4. 使用文档生成的 WSDL 24.3.4.5. 使用 @WSDLDocumentationCollection 24.3.4.6. 消息架构验证 24.3.4.7. 模式验证类型值 24.3.4.8. 指定数据绑定 24.3.4.9. 设置数据绑定 24.3.4.10. 压缩消息 24.3.4.11. @GZIP Properties 24.3.4.12. @fastinfoset Properties 24.3.4.13. 启用 GZIP 24.3.4.14. 启用 FastInfoset 24.3.4.15. 在端点上启用日志记录 24.3.4.16. @logging Properties 24.3.4.17. 使用注解进行日志记录配置 24.3.4.18. 在端点中添加属性和策略 24.3.4.19. 添加属性 24.3.4.20. 使用 @EndpointProperty Annotations 配置 WS-Security 24.3.4.21. 使用 @EndpointProperties Annotation 配置 WS-Security 24.3.4.22. 添加策略 24.3.4.23. @policy Properties 24.4. 生成 WSDL 25. 开发没有 WSDL 合同的消费者 Expand section "25. 开发没有 WSDL 合同的消费者" Collapse section "25. 开发没有 WSDL 合同的消费者" 25.1. java-First Consumer Development 25.2. 创建服务对象 25.3. 在服务中添加端口 25.4. 为端点获取代理 25.5. 实施 Consumer 的 Business Logic 26. 开始点 WSDL 合同 Expand section "26. 开始点 WSDL 合同" Collapse section "26. 开始点 WSDL 合同" 26.1. WSDL 合同示例 27. 顶级服务开发 Expand section "27. 顶级服务开发" Collapse section "27. 顶级服务开发" 27.1. JAX-WS 服务提供商开发概述 27.2. 生成开始点代码 27.3. 实施服务提供商 28. 从 WSDL 合同开发一个消费者 Expand section "28. 从 WSDL 合同开发一个消费者" Collapse section "28. 从 WSDL 合同开发一个消费者" 28.1. 生成 Stub 代码 28.2. 实施一个 Consumer 29. 在运行时查找 WSDL Expand section "29. 在运行时查找 WSDL" Collapse section "29. 在运行时查找 WSDL" 29.1. Locating WSDL 文档的机制 29.2. 通过注入实例化代理 29.3. 使用 JAX-WS 目录 29.4. 使用合同解析器 30. 通用故障处理 Expand section "30. 通用故障处理" Collapse section "30. 通用故障处理" 30.1. 运行时故障 30.2. 协议故障 31. 发布服务 Expand section "31. 发布服务" Collapse section "31. 发布服务" 31.1. 发布服务的时间 31.2. 用于发布服务的 API 31.3. 在 Plain Java Application 中发布服务 31.4. 在 OSGi 容器中发布服务 32. 基本数据绑定概念 Expand section "32. 基本数据绑定概念" Collapse section "32. 基本数据绑定概念" 32.1. 包含和导入架构定义 32.2. XML 命名空间映射 32.3. Object Factory 32.4. 将类添加到 Runtime Marshaller 33. 使用 XML 元素 34. 使用简单类型 Expand section "34. 使用简单类型" Collapse section "34. 使用简单类型" 34.1. 原语类型 34.2. 通过 Restriction 定义的简单类型 34.3. Enumerations 34.4. 列表 34.5. unions 34.6. 简单类型替换 35. 使用复杂类型 Expand section "35. 使用复杂类型" Collapse section "35. 使用复杂类型" 35.1. 基本复杂类型映射 35.2. 属性 35.3. 从简单类型派生复杂类型 35.4. 从复杂类型派生复杂类型 35.5. 发生约束 Expand section "35.5. 发生约束" Collapse section "35.5. 发生约束" 35.5.1. 模式元素支持 Occurrence 约束 35.5.2. 在 All Element 上发生限制 35.5.3. 选择元素上的发生限制 35.5.4. 元素上发生约束 35.5.5. 序列发生的限制 35.6. 使用模型组 36. 使用 Wild 卡类型 Expand section "36. 使用 Wild 卡类型" Collapse section "36. 使用 Wild 卡类型" 36.1. 使用任何元素 36.2. 使用 XML Schema anyType Type 36.3. 使用 Unbound 属性 37. 元素替换 Expand section "37. 元素替换" Collapse section "37. 元素替换" 37.1. 在 XML Schema 中替换组 37.2. 在 Java 中替换组 37.3. 小部件供应商示例 Expand section "37.3. 小部件供应商示例" Collapse section "37.3. 小部件供应商示例" 37.3.1. 小部件排序接口 37.3.2. checkWidgets Operation 37.3.3. placeWidgetOrder Operation 38. 自定义如何生成类型 Expand section "38. 自定义如何生成类型" Collapse section "38. 自定义如何生成类型" 38.1. 自定义类型映射的基础知识 38.2. 指定 XML 架构 Primitive 的 Java 类 38.3. 为简单类型生成 Java 类 38.4. 自定义枚举映射 38.5. 自定义修复的值属性映射 38.6. 指定元素或属性的基本类型 39. 使用 A JAXBContext 对象 40. 开发同步应用程序 Expand section "40. 开发同步应用程序" Collapse section "40. 开发同步应用程序" 40.1. 同步调用的类型 40.2. 用于异步示例的 WSDL 40.3. 生成 Stub 代码 40.4. 使用轮询方法实施同步客户端 40.5. 使用回调方法实施同步客户端 40.6. 捕获从远程服务返回的例外 41. 使用 Raw XML 消息 Expand section "41. 使用 Raw XML 消息" Collapse section "41. 使用 Raw XML 消息" 41.1. 在一个 Consumer 中使用 XML Expand section "41.1. 在一个 Consumer 中使用 XML" Collapse section "41.1. 在一个 Consumer 中使用 XML" 41.1.1. 使用模式 41.1.2. 数据类型 41.1.3. 使用 Dispatch 对象 41.2. 在服务提供商中使用 XML Expand section "41.2. 在服务提供商中使用 XML" Collapse section "41.2. 在服务提供商中使用 XML" 41.2.1. 消息传递模式 41.2.2. 数据类型 41.2.3. 实施提供程序对象 42. 使用上下文 Expand section "42. 使用上下文" Collapse section "42. 使用上下文" 42.1. 了解上下文 42.2. 在服务实施中使用上下文 42.3. 在 Consumer Implementation 中使用上下文 42.4. 使用 JMS 消息属性 Expand section "42.4. 使用 JMS 消息属性" Collapse section "42.4. 使用 JMS 消息属性" 42.4.1. 检查 JMS 消息标头 42.4.2. 检查消息标头属性 42.4.3. 设置 JMS Properties 43. 编写处理程序 Expand section "43. 编写处理程序" Collapse section "43. 编写处理程序" 43.1. 处理程序:简介 43.2. 实施逻辑处理程序 43.3. 处理逻辑处理程序中的消息 43.4. 实施协议处理程序 43.5. 处理 SOAP 处理程序中的消息 43.6. 初始化处理程序 43.7. 处理故障消息 43.8. 关闭处理程序 43.9. 释放处理程序 43.10. 配置端点以使用处理程序 Expand section "43.10. 配置端点以使用处理程序" Collapse section "43.10. 配置端点以使用处理程序" 43.10.1. 编程配置 Expand section "43.10.1. 编程配置" Collapse section "43.10.1. 编程配置" 43.10.1.1. 将处理程序链添加到 Consumer 43.10.1.2. 将处理程序链添加到服务提供商 43.10.2. Spring 配置 44. Maven 工具参考 Expand section "44. Maven 工具参考" Collapse section "44. Maven 工具参考" 44.1. 插件设置 44.2. cxf-codegen-plugin 44.3. java2ws VI. 开发 RESTful Web 服务 Expand section "VI. 开发 RESTful Web 服务" Collapse section "VI. 开发 RESTful Web 服务" 45. RESTful Web 服务简介 46. 创建资源 Expand section "46. 创建资源" Collapse section "46. 创建资源" 46.1. 简介 46.2. 基本 JAX-RS 注释 46.3. 根资源类 46.4. 使用资源方法 46.5. 使用子资源 46.6. 资源选择方法 47. 将信息传递给资源类和方法 Expand section "47. 将信息传递给资源类和方法" Collapse section "47. 将信息传递给资源类和方法" 47.1. 注入数据的基础知识 47.2. 使用 JAX-RS API Expand section "47.2. 使用 JAX-RS API" Collapse section "47.2. 使用 JAX-RS API" 47.2.1. JAX-RS 注解类型 47.2.2. 从请求 URI 注入数据 47.2.3. 从 HTTP 消息标头注入数据 47.2.4. 从 HTML 表单注入数据 47.2.5. 指定要注入的默认值 47.2.6. 将参数注入 Java Bean 47.3. 参数转换器 47.4. 使用 Apache CXF 扩展 48. 将信息返回到 Consumer Expand section "48. 将信息返回到 Consumer" Collapse section "48. 将信息返回到 Consumer" 48.1. 返回类型 48.2. 返回普通 Java 结构 48.3. 微调应用程序的响应 Expand section "48.3. 微调应用程序的响应" Collapse section "48.3. 微调应用程序的响应" 48.3.1. 构建响应的基础知识 48.3.2. 为常见用例创建响应 48.3.3. 处理更高级的响应 48.4. 使用通用类型信息返回实体 48.5. 异步响应 Expand section "48.5. 异步响应" Collapse section "48.5. 异步响应" 48.5.1. 服务器上的异步处理 48.5.2. 超时和超时处理程序 48.5.3. 处理丢弃的连接 48.5.4. 注册回调 49. JAX-RS 2.0 Client API Expand section "49. JAX-RS 2.0 Client API" Collapse section "49. JAX-RS 2.0 Client API" 49.1. JAX-RS 2.0 客户端 API 简介 49.2. 构建客户端目标 49.3. 构建客户端调用 49.4. 解析请求和响应 49.5. 配置客户端端点 49.6. 客户端上的异步处理 50. 处理例外 Expand section "50. 处理例外" Collapse section "50. 处理例外" 50.1. JAX-RS Exception 类概述 50.2. 使用 WebApplicationException 异常报告 50.3. JAX-RS 2.0 Exception 类型 50.4. 将例外映射到 Responses 51. 实体支持 52. 获取和使用上下文信息 Expand section "52. 获取和使用上下文信息" Collapse section "52. 获取和使用上下文信息" 52.1. 上下文简介 52.2. 使用完整请求 URI Expand section "52.2. 使用完整请求 URI" Collapse section "52.2. 使用完整请求 URI" 52.2.1. 注入 URI 信息 52.2.2. 使用 URI 52.2.3. 获取 URI 模板变量的值 53. 注解继承 54. 使用 OpenAPI 支持扩展 JAX-RS 端点 Expand section "54. 使用 OpenAPI 支持扩展 JAX-RS 端点" Collapse section "54. 使用 OpenAPI 支持扩展 JAX-RS 端点" 54.1. OpenApiFeature 选项 54.2. Karaf 实施 Expand section "54.2. Karaf 实施" Collapse section "54.2. Karaf 实施" 54.2.1. Quickstart 示例 54.2.2. 启用 OpenAPI 54.3. Spring Boot 实施 Expand section "54.3. Spring Boot 实施" Collapse section "54.3. Spring Boot 实施" 54.3.1. Quickstart 示例 54.3.2. 启用 Swagger 54.4. 访问 OpenAPI 文档 54.5. 通过反向代理访问 OpenAPI VII. 开发 Apache CXF Interceptors Expand section "VII. 开发 Apache CXF Interceptors" Collapse section "VII. 开发 Apache CXF Interceptors" 55. Apache CXF 运行时中的拦截器 56. Interceptor API 57. 确定拦截器何时被调用 Expand section "57. 确定拦截器何时被调用" Collapse section "57. 确定拦截器何时被调用" 57.1. 指定拦截器位置 57.2. 指定拦截器的阶段 57.3. 在阶段限制拦截器放置 58. 实施 Interceptors Processing Logic Expand section "58. 实施 Interceptors Processing Logic" Collapse section "58. 实施 Interceptors Processing Logic" 58.1. 拦截器流 58.2. 处理消息 58.3. 出错后取消卷 59. 配置端点以使用拦截器 Expand section "59. 配置端点以使用拦截器" Collapse section "59. 配置端点以使用拦截器" 59.1. 决定附加拦截器的位置 59.2. 使用配置添加拦截器 59.3. 以编程方式添加拦截器 Expand section "59.3. 以编程方式添加拦截器" Collapse section "59.3. 以编程方式添加拦截器" 59.3.1. 添加拦截器的方法 59.3.2. 使用拦截器供应商 API 59.3.3. 使用 Java 注解 60. 在 Fly 操作拦截器链 61. JAX-RS 2.0 Filters 和 Interceptors Expand section "61. JAX-RS 2.0 Filters 和 Interceptors" Collapse section "61. JAX-RS 2.0 Filters 和 Interceptors" 61.1. JAX-RS 过滤器和 Interceptors 简介 61.2. 容器请求过滤器 61.3. 容器响应过滤器 61.4. 客户端请求过滤器 61.5. 客户端响应过滤器 61.6. Entity Reader Interceptor 61.7. Entity Writer Interceptor 61.8. 动态绑定 62. Apache CXF 消息处理阶段 63. Apache CXF Provided Interceptors Expand section "63. Apache CXF Provided Interceptors" Collapse section "63. Apache CXF Provided Interceptors" 63.1. Core Apache CXF Interceptors 63.2. front-Ends 63.3. 消息绑定 63.4. 其他功能 64. 拦截器供应商 VIII. Apache CXF 功能 Expand section "VIII. Apache CXF 功能" Collapse section "VIII. Apache CXF 功能" 65. Bean Validation Expand section "65. Bean Validation" Collapse section "65. Bean Validation" 65.1. 简介 65.2. 使用 Bean 验证开发服务 Expand section "65.2. 使用 Bean 验证开发服务" Collapse section "65.2. 使用 Bean 验证开发服务" 65.2.1. 注解服务 Bean 65.2.2. 标准注解 65.2.3. 自定义注解 65.3. 配置 Bean 验证 Expand section "65.3. 配置 Bean 验证" Collapse section "65.3. 配置 Bean 验证" 65.3.1. JAX-WS 配置 65.3.2. JAX-RS 配置 65.3.3. JAX-RS 2.0 配置 法律通告 Settings Close Language: 日本語 简体中文 한국어 English Language: 日本語 简体中文 한국어 English Format: Multi-page Single-page Format: Multi-page Single-page Language and Page Formatting Options Language: 日本語 简体中文 한국어 English Language: 日本語 简体中文 한국어 English Format: Multi-page Single-page Format: Multi-page Single-page 部分 III. Web 服务传输 这部分描述了如何将 Apache CXF 传输添加到 WSDL 文档中。 Previous Next