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 Schema 简单的类型 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 标头添加到 SOAP 1.1 Binding 中 7. 使用 SOAP 1.2 消息 Expand section "7. 使用 SOAP 1.2 消息" Collapse section "7. 使用 SOAP 1.2 消息" 7.1. 在 WSDL 文档中添加 SOAP 1.2 绑定 7.2. 在 SOAP 1.2 消息中添加标头 8. 使用带有附件的 SOAP 发送 Binary 数据 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. 配置一个消费者 Expand section "12.2. 配置一个消费者" Collapse section "12.2. 配置一个消费者" 12.2.1. HTTP Consumer Endpoints 的机制 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. 服务提供商缓存控制指令 12.4. 配置 Undertow 运行时 12.5. 配置 Netty 运行时 12.6. 在拒绝模式中使用 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 扩展名称空间 14.5.2. 基本 JMS 配置 14.5.3. JMS 客户端配置 14.5.4. JMS 提供程序配置 14.6. 使用 Named 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 端点上启用 Schema Validation 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 属性 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. 使用模型定义 REST 服务 19. Apache CXF Logging Expand section "19. Apache CXF Logging" Collapse section "19. Apache CXF Logging" 19.1. Apache CXF 日志概述 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-Addressing 简介 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 拦截器 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 特定 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. 使用 Static Failover 启用 HA 22.3. 使用 Static Failover 配置 HA 23. Apache CXF Binding ID A. 使用 Maven OSGi 工具 Expand section "A. 使用 Maven OSGi 工具" Collapse section "A. 使用 Maven OSGi 工具" A.1. Maven Bundle Plug-In 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 Annotations 概述 24.3.2. 所需的注解 24.3.3. 可选注解 24.3.4. Apache CXF Annotations Expand section "24.3.4. Apache CXF Annotations" Collapse section "24.3.4. Apache CXF Annotations" 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. Messages 模式验证 24.3.4.7. 模式验证类型值 24.3.4.8. 指定数据绑定 24.3.4.9. 设置数据绑定 24.3.4.10. 压缩消息 24.3.4.11. @GZIP 属性 24.3.4.12. @FastInfoset Properties 24.3.4.13. 启用 GZIP 24.3.4.14. Enabling FastInfoset 24.3.4.15. 在端点中启用日志记录 24.3.4.16. @logging 属性 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 注解配置 WS-Security 24.3.4.22. 添加策略 24.3.4.23. @policy 属性 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. 实施消费者的业务日志 26. 启动点 WSDL 合同 Expand section "26. 启动点 WSDL 合同" Collapse section "26. 启动点 WSDL 合同" 26.1. WSDL 合同示例 27. top-Down 服务开发 Expand section "27. top-Down 服务开发" Collapse section "27. top-Down 服务开发" 27.1. JAX-WS 服务提供商开发概述 27.2. 生成起始点代码 27.3. 实施服务提供商 28. 从 WSDL 合同开发消费者 Expand section "28. 从 WSDL 合同开发消费者" Collapse section "28. 从 WSDL 合同开发消费者" 28.1. 生成 Stub Code 28.2. 实施一个消费者 29. 在运行时查找 WSDL Expand section "29. 在运行时查找 WSDL" Collapse section "29. 在运行时查找 WSDL" 29.1. 定位 WSDL 文档的机制 29.2. 通过 Injection 实例化代理 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 应用程序中发布服务 31.4. 在 OSGi 容器中发布服务 32. 基本数据绑定概念 Expand section "32. 基本数据绑定概念" Collapse section "32. 基本数据绑定概念" 32.1. 包含和导入架构定义 32.2. XML 命名空间映射 32.3. 对象因素 32.4. 在 Runtime Marshaller 中添加类 33. 使用 XML 元素 34. 使用简单类型 Expand section "34. 使用简单类型" Collapse section "34. 使用简单类型" 34.1. 原语类型 34.2. 通过限制定义的简单类型 34.3. 枚举 34.4. 列表 34.5. unions 34.6. simple Type Substitution 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 限制的 schema 元素 35.5.2. All 元素的出现限制 35.5.3. Choice 元素的出现限制 35.5.4. 元素的出现限制 35.5.5. 根据序列的出现限制 35.6. 使用模型组 36. 使用 Wild 卡类型 Expand section "36. 使用 Wild 卡类型" Collapse section "36. 使用 Wild 卡类型" 36.1. 使用 Any Elements 36.2. 使用 XML Schema anyType 类型 36.3. 使用 Unbound 属性 37. element Substitution Expand section "37. element Substitution" Collapse section "37. element Substitution" 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 Schema 原语的 Java 类 38.3. 为简单类型生成 Java 类 38.4. 自定义枚举映射 38.5. 自定义修复的值属性映射 38.6. 指定元素或属性的 Base Type 39. 使用 A JAXBContext 对象 40. 开发异步应用程序 Expand section "40. 开发异步应用程序" Collapse section "40. 开发异步应用程序" 40.1. 同步调用类型 40.2. 用于同步示例的 WSDL 40.3. 生成 Stub Code 40.4. 使用轮询方法实施同步客户端 40.5. 使用回调方法实施同步客户端 40.6. 捕获从远程服务返回的例外 41. 使用 Raw XML 消息 Expand section "41. 使用 Raw XML 消息" Collapse section "41. 使用 Raw XML 消息" 41.1. 在消费者中使用 XML Expand section "41.1. 在消费者中使用 XML" Collapse section "41.1. 在消费者中使用 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. 在消费者实现中使用上下文 42.4. 使用 JMS 消息属性 Expand section "42.4. 使用 JMS 消息属性" Collapse section "42.4. 使用 JMS 消息属性" 42.4.1. 检查 JMS 消息标头 42.4.2. 检查消息标头属性 42.4.3. 设置 JMS 属性 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. 将处理程序链添加到消费者 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. 参数 Converters 47.4. 使用 Apache CXF 扩展 48. 将信息返回给消费者 Expand section "48. 将信息返回给消费者" Collapse section "48. 将信息返回给消费者" 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 客户端 API Expand section "49. JAX-RS 2.0 客户端 API" Collapse section "49. JAX-RS 2.0 客户端 API" 49.1. JAX-RS 2.0 客户端 API 简介 49.2. 构建客户端目标 49.3. 构建 Client Invocation 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. 将 Exceptions 映射到响应 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. 使用 Swagger 支持扩展 JAX-RS 端点 Expand section "54. 使用 Swagger 支持扩展 JAX-RS 端点" Collapse section "54. 使用 Swagger 支持扩展 JAX-RS 端点" 54.1. Swagger2Feature 选项 54.2. 访问 Swagger 文档 54.3. 通过反向代理访问 Swagger VII. 开发 Apache CXF Interceptors Expand section "VII. 开发 Apache CXF Interceptors" Collapse section "VII. 开发 Apache CXF Interceptors" 55. Apache CXF 运行时中的拦截器 56. Interceptor API 57. 确定 Interceptor is Invoked Expand section "57. 确定 Interceptor is Invoked" Collapse section "57. 确定 Interceptor is Invoked" 57.1. 指定 Interceptor Location 57.2. 指定拦截器的阶段 57.3. 在一个阶段约束拦截器放置 58. 实施拦截器处理日志 Expand section "58. 实施拦截器处理日志" Collapse section "58. 实施拦截器处理日志" 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 过滤器和拦截器简介 61.2. 容器请求过滤器 61.3. 容器响应过滤器 61.4. Client Request Filter 61.5. 客户端响应过滤器 61.6. 实体 Reader Interceptor 61.7. 实体写入程序 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. 前端 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 Validation 开发服务 Expand section "65.2. 使用 Bean Validation 开发服务" Collapse section "65.2. 使用 Bean Validation 开发服务" 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 Apache CXF 开发指南 Red Hat Fuse 7.4使用 Apache CXF Web 服务开发应用程序摘要 使用 Apache CXF 开发 Web 服务指南. Next