JBoss.orgCommunity Documentation

RESTEasy JAX-RS

RESTFul Web Services for Java

4.7.0-SNAPSHOT


前言
1. 概述
2. 开源许可
3. 安装/配置
3.1. WildFly 中的 RESTEasy 模块
3.1.1. 其他 RESTEasy 模块
3.1.2. 升级 WildFly 中的 RESTEasy
3.2. 将 RESTEasy 应用程序部署到 WildFly
3.3. 部署到其他 servlet 容器
3.3.1. Servlet 3.0 容器
3.3.2. 老的 servlet 容器
3.4. 配置
3.4.1. RESTEasy with MicroProfile Config
3.4.2. 完全使用 MicroProfile Config
3.4.3. 使用 RESTEasy 的 MicroProfile Config扩展
3.4.4. 配置 MicroProfile Config
3.4.5. RESTEasy 的经典配置机制
3.4.6. 覆盖 RESTEasy 的配置机制
3.5. 配置开关
3.6. javax.ws.rs.core.Application
3.7. RESTEasy 作为 ServletContextListener
3.8. RESTEasy 作为 Servlet Filter
3.9. 客户端
4. 使用 @Path 和 @GET, @POST 等注解
4.1. @Path 和正则表达式映射
5. @PathParam
5.1. @PathParam使用进阶和正则表达式
5.2. @PathParam 和 PathSegment
6. @QueryParam
7. @HeaderParam
7.1. HeaderDelegates
8. Linking resources
8.1. 链路报头
8.2. Atom links in the resource representations
8.2.1. Configuration
8.2.2. Your first links injected
8.2.3. Customising how the Atom links are serialised
8.2.4. Specifying which JAX-RS methods are tied to which resources
8.2.5. Specifying path parameter values for URI templates
8.2.6. Securing entities
8.2.7. Extending the UEL context
8.2.8. Resource facades
9. @MatrixParam
10. @CookieParam
11. @FormParam
12. @Form
13. 改进的 @…Param 注解
14. Optional参数类型
15. @DefaultValue
16. @Encoded 和编码
17. @Context
18. JAX-RS Resources定位器和子Resources
19. Resources 元数据配置
20. JAX-RS 内容协商
20.1. URL-based 协商
20.2. 基于查询字符串参数的协商
21. Content Marshalling/Providers
21.1. 默认提供程序和默认 JAX-RS 内容编组
21.2. 使用 @Provider 类进行内容编排
21.3. Providers Utility Class
21.4. 配置文档编排
21.5. 文本媒体类型和字符集
22. JAXB providers
22.1. JAXB 装饰者
22.2. ContextResolvers 提供插件式 JAXBContext
22.3. JAXB + XML provider
22.3.1. @XmlHeader 和 @Stylesheet
22.4. JAXB + JSON provider
22.5. JAXB + FastinfoSet provider
22.6. JAXB 对象的数组和集合
22.6.1. 在客户端检索集合
22.6.2. JSON and JAXB 集合/数组
22.7. JAXB 对象的 Maps
22.7.1. 客户端检索Maps
22.7.2. JSON and JAXB maps
22.8. 接口、抽象类和 JAXB
22.9. 配置 JAXB 编组
23. RESTEasy 对 Atom 的支持
23.1. RESTEasy Atom API and Provider
23.2. 使用 JAXB 和 Atom 提供程序
24. 通过Jackson提供对JSON的支持
24.1. 在 WildFly 外使用 Jackson 1.9. x
24.2. 在WildFly 8中使用Jackson 1.9.x
24.3. 在WildFly之外使用Jackson 2
24.4. 在WildFly 9 以及更高版本使用Jackson 2
24.5. 附加 RESTEasy 特性
24.6. 对JSONP的支持
24.7. Jackson JSON 装饰器
24.8. 对JSON过滤器的支持
24.9. 多态类型反序列化
25. 通过Java EE 7 JSON-P API 支持JSON
26. Multipart Providers
26.1. Multipart/mixed
26.1.1. Writing multipart/mixed messages
26.1.2. Reading multipart/mixed messages
26.1.3. Simple multipart/mixed message example
26.1.4. Multipart/mixed message with GenericType example
26.1.5. java.util.List with multipart/mixed data example
26.2. Multipart/related
26.2.1. Writing multipart/related messages
26.2.2. Reading multipart/related messages
26.2.3. Multipart/related message example
26.2.4. XML-binary Optimized Packaging (XOP)
26.2.5. @XopWithMultipartRelated return object example
26.2.6. @XopWithMultipartRelated input parameter example
26.3. Multipart/form-data
26.3.1. Writing multipart/form-data messages
26.3.2. Reading multipart/form-data messages
26.3.3. Simple multipart/form-data message example
26.3.4. java.util.Map with multipart/form-data
26.3.5. Multipart/form-data java.util.Map as method return type
26.3.6. @MultipartForm and POJOs
26.4. Note about multipart parsing and working with other frameworks
26.5. Overwriting the default fallback content type for multipart messages
26.6. Overwriting the content type for multipart messages
26.7. Overwriting the default fallback charset for multipart messages
27. JAX-RS 2.1 Additions
27.1. CompletionStage support
27.2. Reactive Clients API
27.3. Server-Sent Events (SSE)
27.3.1. SSE Server
27.3.2. SSE Broadcasting
27.3.3. SSE Client
27.4. Java API for JSON Binding
27.5. JSON Patch and JSON Merge Patch
28. String marshalling for String based @*Param
28.1. Simple conversion
28.2. ParamConverter
28.3. StringParameterUnmarshaller
28.4. Collections
28.4.1. @QueryParam
28.4.2. @MatrixParam
28.4.3. @HeaderParam
28.4.4. @CookieParam
28.4.5. @PathParam
28.5. Extension to ParamConverter semantics
28.6. Default multiple valued ParamConverter
29. Responses using javax.ws.rs.core.Response
30. Exception Handling
30.1. Exception Mappers
30.2. RESTEasy Built-in Internally-Thrown Exceptions
30.3. Resteasy WebApplicationExceptions
30.4. Overriding RESTEasy Builtin Exceptions
31. Configuring Individual JAX-RS Resource Beans
32. Content encoding
32.1. GZIP Compression/Decompression
32.1.1. Configuring GZIP compression / decompression
32.2. General content encoding
33. CORS
34. Content-Range Support
35. RESTEasy Caching Features
35.1. @Cache and @NoCache Annotations
35.2. Client "Browser" Cache
35.3. Local Server-Side Response Cache
35.4. HTTP preconditions
36. Filters and Interceptors
36.1. Server Side Filters
36.1.1. Asynchronous filters
36.2. Client Side Filters
36.3. Reader and Writer Interceptors
36.4. Per Resource Method Filters and Interceptors
36.5. Ordering
37. Asynchronous HTTP Request Processing
37.1. Using the @Suspended annotation
37.2. Using Reactive return types
37.3. Asynchronous filters
37.4. Asynchronous IO
38. Asynchronous Job Service
38.1. Using Async Jobs
38.2. Oneway: Fire and Forget
38.3. Setup and Configuration
39. Asynchronous Injection
39.1. org.jboss.resteasy.spi.ContextInjector Interface
39.2. Single<Foo> Example
39.3. Async Injector With Annotations Example
40. Reactive programming support
40.1. CompletionStage
40.2. CompletionStage in JAX-RS
40.3. Beyond CompletionStage
40.4. Pluggable reactive types: RxJava 2 in RESTEasy
40.5. Proxies
40.6. Adding extensions
41. Embedded Containers
41.1. Undertow
41.2. Sun JDK HTTP Server
41.3. Netty
41.4. Vert.x
41.5. EmbeddedJaxrsServer
42. Server-side Mock Framework
43. Securing JAX-RS and RESTEasy
44. JSON Web Signature and Encryption (JOSE-JWT)
44.1. JSON Web Signature (JWS)
44.2. JSON Web Encryption (JWE)
45. Doseta Digital Signature Framework
45.1. Maven settings
45.2. Signing API
45.2.1. @Signed annotation
45.3. Signature Verification API
45.3.1. Annotation-based verification
45.4. Managing Keys via a KeyRepository
45.4.1. Create a KeyStore
45.4.2. Configure Restreasy to use the KeyRepository
45.4.3. Using DNS to Discover Public Keys
46. Body Encryption and Signing via SMIME
46.1. Maven settings
46.2. Message Body Encryption
46.3. Message Body Signing
46.4. application/pkcs7-signature
47. EJB Integration
48. Spring Integration
48.1. Basic Integration
48.2. Customized Configuration
48.3. Spring MVC Integration
48.4. Undertow Embedded Spring Container
48.5. Processing Spring Web REST annotations in RESTEasy
48.6. Spring Boot starter
48.7. Upgrading in WildFly
49. CDI Integration
49.1. Using CDI beans as JAX-RS components
49.2. Default scopes
49.3. Configuration within WildFly
49.4. Configuration with different distributions
50. Guice 3.0 Integration
50.1. Request Scope
50.2. Binding JAX-RS utilities
50.3. Configuring Stage
50.4. Custom Injector creation
51. RESTEasy Client API
51.1. JAX-RS 2.0 Client API
51.2. RESTEasy Proxy Framework
51.2.1. Abstract Responses
51.2.2. Response proxies
51.2.3. Giving client proxy an ad hoc URI
51.2.4. Sharing an interface between client and server
51.3. Apache HTTP Client 4.x and other backends
51.3.1. HTTP redirect
51.3.2. Configuring SSL
51.3.3. HTTP proxy
51.3.4. Apache HTTP Client 4.3 APIs
51.3.5. Asynchronous HTTP Request Processing
51.3.6. Jetty Client Engine
51.3.7. Vertx Client Engine
51.3.8. Reactor Netty Client Engine
52. MicroProfile Rest Client
52.1. Client proxies
52.2. Concepts imported from JAX-RS
52.3. Beyond JAX-RS and RESTEasy
53. AJAX Client
53.1. Generated JavaScript API
53.1.1. JavaScript API servlet
53.1.2. JavaScript API usage
53.1.3. Work with @Form
53.1.4. MIME types and unmarshalling.
53.1.5. MIME types and marshalling.
53.2. Using the JavaScript API to build AJAX queries
53.2.1. The REST object
53.2.2. The REST.Request class
53.3. Caching Features
54. RESTEasy WADL Support
54.1. RESTEasy WADL Support for Servlet Container(Deprecated)
54.2. RESTEasy WADL Support for Servlet Container(Updated)
54.3. RESTEasy WADL support for Sun JDK HTTP Server
54.4. RESTEasy WADL support for Netty Container
54.5. RESTEasy WADL Support for Undertow Container
55. RESTEasy Tracing Feature
55.1. Overview
55.2. Tracing Info Mode
55.3. Tracing Info Level
55.4. Basic Usages
55.5. Client Side Tracing Info
55.6. Json Formatted Response
55.7. List Of Tracing Events
55.8. Tracing Example
56. Validation
56.1. Violation reporting
56.2. Validation Service Providers
56.3. Validation Implementations
57. Internationalization and Localization
57.1. Internationalization
57.2. Localization
58. Maven and RESTEasy
59. Migration from older versions
59.1. Migration to RESTEasy 3.0 series
59.2. Migration to RESTEasy 3.1 series
59.3. Migration to RESTEasy 3.5+ series
59.4. Migration to RESTEasy 4 series
60. Books You Can Read