📄️ 3.3.49. Async Returns + Virtual-Thread Dispatch
@RestOp handler methods may return CompletableFuture (or any CompletionStage); the framework unwraps the value through the standard response-processor chain when the future resolves. A separate, opt-in @Rest(virtualThreads=true) flag dispatches handler invocation onto Java 21+ virtual threads with graceful degradation on Java 17.
📄️ 3.3.50. Reactive-Streams Returns
@RestOp handler methods may return reactive-streams values. The feature is fully opt-in by adding a module to the classpath — a bare juneau-rest-server has zero reactive behavior and its DefaultConfig wires no reactive processor.
📄️ 3.3.51. Built-in Parameters
The following URL parameters have special meaning and can be passed in through the URL of the request:
📄️ 3.3.52. Session Options via HTTP
Juneau REST supports overriding serializer and parser session properties on a per-request basis via HTTP headers or query parameters. This allows clients to control aspects of marshalling (such as whitespace formatting, bean type annotations, etc.) without server-side code changes.
📄️ 3.3.53. Using with OSGi
A Juneau REST servlet is an ordinary HttpServlet, so in OSGi you publish it as a servlet service and let the HTTP whiteboard mount it.
📄️ 3.3.54. RestContext
Examples on this page using RestContext.Builder (constructor injection or @RestInit parameter
📄️ 3.3.55. RestOpContext
The RestOpContext object is the workhorse class for an
📄️ 3.3.56. Response Processors
The REST Server API uses the concept of registered response processors for converting objects returned by REST methods
📄️ 3.3.57. REST/RPC
The REST/RPC (RPC over REST) API allows the creation of client-side remote proxy interfaces for calling methods on
📄️ 3.3.58. Serializing URIs
Juneau serializers turn relative URIs into absolute form, using the authority, context root, servlet path and path info of the current request.
📄️ 3.3.59. Utility Beans
The org.apache.juneau.rest.server.beans package contains a set of reusable utility beans meant to
📄️ 3.3.60. Using with HTML Beans
The HtmlFlavorRest class in the petstore console (the Html subtab at /console/dev/flavors/html) shows how HTML5 beans can be used to generate arbitrary HTML on REST endpoints.
📄️ 3.3.61. RDF Support (juneau-rest-server-rdf)
The opt-in juneau-rest-server-rdf module adds RDF (Jena) marshalling to a @Rest-annotated resource by supplying a predefined config interface that mirrors the standard universal config but with the RDF serializers and parsers enabled.