parent
2ca64ad88a
commit
165fba868c
|
@ -10642,7 +10642,7 @@ shows such a class:
|
|||
----
|
||||
class BlockedListNotifier : ApplicationListener<BlockedListEvent> {
|
||||
|
||||
lateinit var notificationAddres: String
|
||||
lateinit var notificationAddress: String
|
||||
|
||||
override fun onApplicationEvent(event: BlockedListEvent) {
|
||||
// notify appropriate parties via notificationAddress...
|
||||
|
|
|
@ -96,7 +96,7 @@ The following example shows how to use JNDI to look up an environment variable w
|
|||
----
|
||||
|
||||
|
||||
[[xsd-schemas-jee-jndi-lookup-evironment-multiple]]
|
||||
[[xsd-schemas-jee-jndi-lookup-environment-multiple]]
|
||||
==== `<jee:jndi-lookup/>` (with Multiple JNDI Environment Settings)
|
||||
|
||||
The following example shows how to use JNDI to look up multiple environment variables
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
= RSocket
|
||||
:gh-rsocket: https://github.com/rsocket
|
||||
:gh-rsocket-java: {gh-rsocket}/rsocket-java
|
||||
:gh-rsocket-extentions: {gh-rsocket}/rsocket/blob/master/Extensions
|
||||
:gh-rsocket-extensions: {gh-rsocket}/rsocket/blob/master/Extensions
|
||||
|
||||
This section describes Spring Framework's support for the RSocket protocol.
|
||||
|
||||
|
@ -99,9 +99,9 @@ and therefore only included in the first message on a request, i.e. with one of
|
|||
|
||||
Protocol extensions define common metadata formats for use in applications:
|
||||
|
||||
* {gh-rsocket-extentions}/CompositeMetadata.md[Composite Metadata]-- multiple,
|
||||
* {gh-rsocket-extensions}/CompositeMetadata.md[Composite Metadata]-- multiple,
|
||||
independently formatted metadata entries.
|
||||
* {gh-rsocket-extentions}/Routing.md[Routing] -- the route for a request.
|
||||
* {gh-rsocket-extensions}/Routing.md[Routing] -- the route for a request.
|
||||
|
||||
|
||||
|
||||
|
@ -218,7 +218,7 @@ established transparently and used.
|
|||
|
||||
For data, the default mime type is derived from the first configured `Decoder`. For
|
||||
metadata, the default mime type is
|
||||
{gh-rsocket-extentions}/CompositeMetadata.md[composite metadata] which allows multiple
|
||||
{gh-rsocket-extensions}/CompositeMetadata.md[composite metadata] which allows multiple
|
||||
metadata value and mime type pairs per request. Typically both don't need to be changed.
|
||||
|
||||
Data and metadata in the `SETUP` frame is optional. On the server side,
|
||||
|
@ -291,7 +291,7 @@ infrastructure that's used on a server, but registered programmatically as follo
|
|||
----
|
||||
<1> Use `PathPatternRouteMatcher`, if `spring-web` is present, for efficient
|
||||
route matching.
|
||||
<2> Create a responder from a class with `@MessageMaping` and/or `@ConnectMapping` methods.
|
||||
<2> Create a responder from a class with `@MessageMapping` and/or `@ConnectMapping` methods.
|
||||
<3> Register the responder.
|
||||
|
||||
[source,kotlin,indent=0,subs="verbatim,quotes",role="secondary"]
|
||||
|
@ -310,7 +310,7 @@ infrastructure that's used on a server, but registered programmatically as follo
|
|||
----
|
||||
<1> Use `PathPatternRouteMatcher`, if `spring-web` is present, for efficient
|
||||
route matching.
|
||||
<2> Create a responder from a class with `@MessageMaping` and/or `@ConnectMapping` methods.
|
||||
<2> Create a responder from a class with `@MessageMapping` and/or `@ConnectMapping` methods.
|
||||
<3> Register the responder.
|
||||
|
||||
Note the above is only a shortcut designed for programmatic registration of client
|
||||
|
@ -494,7 +494,7 @@ The `data(Object)` step is optional. Skip it for requests that don't send data:
|
|||
----
|
||||
|
||||
Extra metadata values can be added if using
|
||||
{gh-rsocket-extentions}/CompositeMetadata.md[composite metadata] (the default) and if the
|
||||
{gh-rsocket-extensions}/CompositeMetadata.md[composite metadata] (the default) and if the
|
||||
values are supported by a registered `Encoder`. For example:
|
||||
|
||||
[source,java,indent=0,subs="verbatim,quotes",role="primary"]
|
||||
|
@ -605,8 +605,8 @@ Then start an RSocket server through the Java RSocket API and plug the
|
|||
----
|
||||
|
||||
`RSocketMessageHandler` supports
|
||||
{gh-rsocket-extentions}/CompositeMetadata.md[composite] and
|
||||
{gh-rsocket-extentions}/Routing.md[routing] metadata by default. You can set its
|
||||
{gh-rsocket-extensions}/CompositeMetadata.md[composite] and
|
||||
{gh-rsocket-extensions}/Routing.md[routing] metadata by default. You can set its
|
||||
<<rsocket-metadata-extractor>> if you need to switch to a
|
||||
different mime type or register additional metadata mime types.
|
||||
|
||||
|
@ -821,7 +821,7 @@ requests to the `RSocketRequester` for the connection. See
|
|||
== MetadataExtractor
|
||||
|
||||
Responders must interpret metadata.
|
||||
{gh-rsocket-extentions}/CompositeMetadata.md[Composite metadata] allows independently
|
||||
{gh-rsocket-extensions}/CompositeMetadata.md[Composite metadata] allows independently
|
||||
formatted metadata values (e.g. for routing, security, tracing) each with its own mime
|
||||
type. Applications need a way to configure metadata mime types to support, and a way
|
||||
to access extracted values.
|
||||
|
@ -832,7 +832,7 @@ in annotated handler methods.
|
|||
|
||||
`DefaultMetadataExtractor` can be given `Decoder` instances to decode metadata. Out of
|
||||
the box it has built-in support for
|
||||
{gh-rsocket-extentions}/Routing.md["message/x.rsocket.routing.v0"] which it decodes to
|
||||
{gh-rsocket-extensions}/Routing.md["message/x.rsocket.routing.v0"] which it decodes to
|
||||
`String` and saves under the "route" key. For any other mime type you'll need to provide
|
||||
a `Decoder` and register the mime type as follows:
|
||||
|
||||
|
|
|
@ -498,7 +498,7 @@ The following example shows such a case:
|
|||
[source,java,indent=0,subs="verbatim,quotes",role="primary"]
|
||||
.Java
|
||||
----
|
||||
@ContextConfiguration(initializers = CustomContextIntializer.class) // <1>
|
||||
@ContextConfiguration(initializers = CustomContextInitializer.class) // <1>
|
||||
class ContextInitializerTests {
|
||||
// class body...
|
||||
}
|
||||
|
@ -508,7 +508,7 @@ The following example shows such a case:
|
|||
[source,kotlin,indent=0,subs="verbatim,quotes",role="secondary"]
|
||||
.Kotlin
|
||||
----
|
||||
@ContextConfiguration(initializers = [CustomContextIntializer::class]) // <1>
|
||||
@ContextConfiguration(initializers = [CustomContextInitializer::class]) // <1>
|
||||
class ContextInitializerTests {
|
||||
// class body...
|
||||
}
|
||||
|
@ -6964,7 +6964,7 @@ do they involve any of the supporting `@InitBinder`, `@ModelAttribute`, or
|
|||
|
||||
The Spring MVC Test framework, also known as `MockMvc`, aims to provide more complete
|
||||
testing for Spring MVC controllers without a running server. It does that by invoking
|
||||
the `DispacherServlet` and passing
|
||||
the `DispatcherServlet` and passing
|
||||
<<mock-objects-servlet, "`mock`" implementations of the Servlet API>> from the
|
||||
`spring-test` module which replicates the full Spring MVC request handling without
|
||||
a running server.
|
||||
|
|
|
@ -145,7 +145,7 @@ val string = request.awaitBody<String>()
|
|||
|
||||
|
||||
The following example extracts the body to a `Flux<Person>` (or a `Flow<Person>` in Kotlin),
|
||||
where `Person` objects are decoded from someserialized form, such as JSON or XML:
|
||||
where `Person` objects are decoded from some serialized form, such as JSON or XML:
|
||||
|
||||
[source,java,role="primary"]
|
||||
.Java
|
||||
|
|
|
@ -353,7 +353,7 @@ into the attributes of the `WebSocketSession`.
|
|||
|
||||
|
||||
[[webflux-websocket-server-config]]
|
||||
=== Server Configation
|
||||
=== Server Configuration
|
||||
[.small]#<<web.adoc#websocket-server-runtime-configuration, Same as in the Servlet stack>>#
|
||||
|
||||
The `RequestUpgradeStrategy` for each server exposes configuration specific to the
|
||||
|
|
|
@ -650,7 +650,7 @@ a proxy at the boundary of trust should be configured to remove untrusted forwar
|
|||
from the outside. You can also configure the `ForwardedHeaderTransformer` with
|
||||
`removeOnly=true`, in which case it removes but does not use the headers.
|
||||
|
||||
NOTE: In 5.1 `ForwardedHeaderFilter` was deprecated and superceded by
|
||||
NOTE: In 5.1 `ForwardedHeaderFilter` was deprecated and superseded by
|
||||
`ForwardedHeaderTransformer` so forwarded headers can be processed earlier, before the
|
||||
exchange is created. If the filter is configured anyway, it is taken out of the list of
|
||||
filters, and `ForwardedHeaderTransformer` is used instead.
|
||||
|
@ -2256,7 +2256,7 @@ The following example gets the value of the `Accept-Encoding` and `Keep-Alive` h
|
|||
//...
|
||||
}
|
||||
----
|
||||
<1> Get the value of the `Accept-Encoging` header.
|
||||
<1> Get the value of the `Accept-Encoding` header.
|
||||
<2> Get the value of the `Keep-Alive` header.
|
||||
|
||||
[source,kotlin,indent=0,subs="verbatim,quotes",role="secondary"]
|
||||
|
@ -2269,7 +2269,7 @@ The following example gets the value of the `Accept-Encoding` and `Keep-Alive` h
|
|||
//...
|
||||
}
|
||||
----
|
||||
<1> Get the value of the `Accept-Encoging` header.
|
||||
<1> Get the value of the `Accept-Encoding` header.
|
||||
<2> Get the value of the `Keep-Alive` header.
|
||||
|
||||
Type conversion is applied automatically if the target method parameter type is not
|
||||
|
|
|
@ -533,7 +533,7 @@ resolve exceptions thrown during request processing. Those exception resolvers a
|
|||
customizing the logic to address exceptions. See <<mvc-exceptionhandlers>> for more details.
|
||||
|
||||
For HTTP caching support, handlers can use the `checkNotModified` methods of `WebRequest`,
|
||||
along with further options for annoated controllers as described in
|
||||
along with further options for annotated controllers as described in
|
||||
<<mvc-caching-etag-lastmodified,HTTP Caching for Controllers>>.
|
||||
|
||||
You can customize individual `DispatcherServlet` instances by adding Servlet
|
||||
|
@ -691,7 +691,7 @@ The following table lists the available `HandlerExceptionResolver` implementatio
|
|||
|===
|
||||
|
||||
|
||||
[[mvc-excetionhandlers-handling]]
|
||||
[[mvc-exceptionhandlers-handling]]
|
||||
==== Chain of Resolvers
|
||||
|
||||
You can form an exception resolver chain by declaring multiple `HandlerExceptionResolver`
|
||||
|
|
|
@ -1987,7 +1987,7 @@ Note that this incurs a small performance overhead, so you should enable it only
|
|||
|
||||
|
||||
|
||||
[[websocket-stomp-appplication-context-events]]
|
||||
[[websocket-stomp-application-context-events]]
|
||||
=== Events
|
||||
|
||||
Several `ApplicationContext` events are published and can be
|
||||
|
@ -2030,7 +2030,7 @@ implement their own reconnecting logic.
|
|||
[[websocket-stomp-interceptors]]
|
||||
=== Interception
|
||||
|
||||
<<websocket-stomp-appplication-context-events>> provide notifications for the lifecycle
|
||||
<<websocket-stomp-application-context-events>> provide notifications for the lifecycle
|
||||
of a STOMP connection but not for every client message. Applications can also register a
|
||||
`ChannelInterceptor` to intercept any message and in any part of the processing chain.
|
||||
The following example shows how to intercept inbound messages from clients:
|
||||
|
@ -2424,7 +2424,7 @@ through any other application instances.
|
|||
=== Monitoring
|
||||
|
||||
When you use `@EnableWebSocketMessageBroker` or `<websocket:message-broker>`, key
|
||||
infrastructure components automatically gather statisticss and counters that provide
|
||||
infrastructure components automatically gather statistics and counters that provide
|
||||
important insight into the internal state of the application. The configuration
|
||||
also declares a bean of type `WebSocketMessageBrokerStats` that gathers all
|
||||
available information in one place and by default logs it at the `INFO` level once
|
||||
|
|
Loading…
Reference in New Issue