Typo fixes and formatting

This commit is contained in:
Juergen Hoeller 2019-03-29 23:44:00 +01:00
parent 85332c7a49
commit 462d047f72
2 changed files with 48 additions and 49 deletions

View File

@ -285,20 +285,20 @@ The parameters to any of the above macros have consistent meanings:
and bound to the command object. Map objects stored against the keys are the labels
displayed on the form to the user and may be different from the corresponding values
posted back by the form. Usually, such a map is supplied as reference data by the
controller. You can use any `Map` implementation, depending on required behavior. For
strictly sorted maps, you can use a `SortedMap` (such as a `TreeMap`) with a suitable `Comparator`
and, for arbitrary Maps that should return values in insertion order, use a
`LinkedHashMap` or a `LinkedMap` from `commons-collections`.
* `separator`: Where multiple options are available as discreet elements (radio buttons or
checkboxes), the sequence of characters used to separate each one in the list (such as
`<br>`).
* `attributes`: An additional string of arbitrary tags or text to be included within the
HTML tag itself. This string is echoed literally by the macro. For example, in a
`textarea` field, you may supply attributes (such as 'rows="5" cols="60"'), or you could pass
style information such as 'style="border:1px solid silver"'.
* `classOrStyle`: For the `showErrors` macro, the name of the CSS class that the `span` element
that wraps each error uses. If no information is supplied (or the value is empty),
the errors are wrapped in `<b></b>` tags.
controller. You can use any `Map` implementation, depending on required behavior.
For strictly sorted maps, you can use a `SortedMap` (such as a `TreeMap`) with a
suitable `Comparator` and, for arbitrary Maps that should return values in insertion
order, use a `LinkedHashMap` or a `LinkedMap` from `commons-collections`.
* `separator`: Where multiple options are available as discreet elements (radio buttons
or checkboxes), the sequence of characters used to separate each one in the list
(such as `<br>`).
* `attributes`: An additional string of arbitrary tags or text to be included within
the HTML tag itself. This string is echoed literally by the macro. For example, in a
`textarea` field, you may supply attributes (such as 'rows="5" cols="60"'), or you
could pass style information such as 'style="border:1px solid silver"'.
* `classOrStyle`: For the `showErrors` macro, the name of the CSS class that the `span`
element that wraps each error uses. If no information is supplied (or the value is
empty), the errors are wrapped in `<b></b>` tags.
The following sections outline examples of the macros (some in FTL and some in VTL). Where usage
differences exist between the two languages, they are explained in the notes.
@ -799,7 +799,8 @@ When developing with JSPs, you can declare a `InternalResourceViewResolver` or a
`ResourceBundleViewResolver` relies on a properties file to define the view names
mapped to a class and a URL. With a `ResourceBundleViewResolver`, you
can mix different types of views byusing only one resolver, as the following example shows:
can mix different types of views by using only one resolver, as the following example
shows:
====
[source,xml,indent=0]
@ -810,7 +811,7 @@ can mix different types of views byusing only one resolver, as the following exa
<property name="basename" value="views"/>
</bean>
# And a sample properties file is uses (views.properties in WEB-INF/classes):
# And a sample properties file is used (views.properties in WEB-INF/classes):
welcome.(class)=org.springframework.web.servlet.view.JstlView
welcome.url=/WEB-INF/jsp/welcome.jsp
@ -818,9 +819,9 @@ can mix different types of views byusing only one resolver, as the following exa
productList.url=/WEB-INF/jsp/productlist.jsp
----
`InternalResourceBundleViewResolver` can also be used for JSPs. As a best practice, we
strongly encourage placing your JSP files in a directory under the `'WEB-INF'`
directory so there can be no direct access by clients.
`InternalResourceViewResolver` can also be used for JSPs. As a best practice, we strongly
encourage placing your JSP files in a directory under the `'WEB-INF'` directory so there
can be no direct access by clients.
[source,xml,indent=0]
[subs="verbatim,quotes"]
@ -838,7 +839,7 @@ directory so there can be no direct access by clients.
[[mvc-view-jsp-jstl]]
=== JSPs versus JSTL
When using the Java Standard Tag Library you must use a special view class, the
When using the JSP Standard Tag Library (JSTL) you must use a special view class, the
`JstlView`, as JSTL needs some preparation before things such as the I18N features can
work.
@ -1612,7 +1613,7 @@ or see the tag library description.
A key principle of REST is the use of the "`Uniform Interface`". This means that all
resources (URLs) can be manipulated by using the same four HTTP methods: GET, PUT, POST,
and DELETE. For each method, the HTTP specification defines the exact semantics. For
instance, a GET should always be a safe operation, meaning that is has no side effects,
instance, a GET should always be a safe operation, meaning that it has no side effects,
and a PUT or DELETE should be idempotent, meaning that you can repeat these operations
over and over again, but the end result should be the same. While HTTP defines these
four methods, HTML only supports two: GET and POST. Fortunately, there are two possible
@ -1625,8 +1626,7 @@ with a hidden `method` parameter is converted into the corresponding HTTP method
request.
To support HTTP method conversion, the Spring MVC form tag was updated to support setting
the HTTP method. For example, the following snippet comes from the Pet Clinic
sample:
the HTTP method. For example, the following snippet comes from the Pet Clinic sample:
====
[source,xml,indent=0]
@ -1638,8 +1638,8 @@ sample:
----
====
The preceding example perform an HTTP POST, with the "`real`" DELETE method hidden behind a
request parameter. It is picked up by the `HiddenHttpMethodFilter`, which is defined in
The preceding example performs an HTTP POST, with the "`real`" DELETE method hidden behind
a request parameter. It is picked up by the `HiddenHttpMethodFilter`, which is defined in
web.xml, as the following example shows:
====
@ -1833,7 +1833,7 @@ implementations. See the Tiles documentation for details on how to use
You can specify `SimpleSpringPreparerFactory` to autowire `ViewPreparer` instances based on
specified preparer classes, applying Spring's container callbacks as well as applying
configured Spring BeanPostProcessors. If Spring's context-wide annotation configuration has
been activated, annotations in `ViewPreparer` classes aree automatically detected and
been activated, annotations in `ViewPreparer` classes are automatically detected and
applied. Note that this expects preparer classes in the Tiles definition files, as
the default `PreparerFactory` does.
@ -1843,7 +1843,7 @@ application context. The full bean creation process is in the control of the Spr
application context in this case, allowing for the use of explicit dependency injection
configuration, scoped beans, and so on. Note that you need to define one Spring bean definition
for each preparer name (as used in your Tiles definitions). The following example shows
how to define a set a `SpringBeanPreparerFactory` property on a `TilesConfigurer` bean:
how to define a `SpringBeanPreparerFactory` property on a `TilesConfigurer` bean:
====
[source,xml,indent=0]
@ -1911,7 +1911,7 @@ Similar requirements apply for implementing `AbstractRssFeedView`, as the follow
[source,java,indent=0]
[subs="verbatim,quotes"]
----
public class SampleContentAtomView extends AbstractRssFeedView {
public class SampleContentRssView extends AbstractRssFeedView {
@Override
protected void buildFeedMetadata(Map<String, Object> model,
@ -1956,13 +1956,13 @@ dynamically from the model data. The document is the view and is streamed from t
server with the correct content type, to (hopefully) enable the client PC to run their
spreadsheet or PDF viewer application in response.
In order to use Excel views, you need to add the Apache POI library to your classpath,
In order to use Excel views, you need to add the Apache POI library to your classpath.
For PDF generation, you need to add (preferably) the OpenPDF library.
NOTE: You should use the latest versions of the underlying document-generation libraries, if possible.
In particular, we strongly recommend OpenPDF (for example, OpenPDF 1.0.5) instead of the
outdated original iText 2.1.7, since OpenPDF is actively maintained and fixes an important
vulnerability for untrusted PDF content.
NOTE: You should use the latest versions of the underlying document-generation libraries,
if possible. In particular, we strongly recommend OpenPDF (for example, OpenPDF 1.0.5)
instead of the outdated original iText 2.1.7, since OpenPDF is actively maintained and
fixes an important vulnerability for untrusted PDF content.
@ -2027,9 +2027,9 @@ The `MappingJackson2JsonView` uses the Jackson library's `ObjectMapper` to rende
content as JSON. By default, the entire contents of the model map (with the exception of
framework-specific classes) are encoded as JSON. For cases where the contents of the
map need to be filtered, you can specify a specific set of model attributes to encode
by using the `modelKeys` property. You can also use the `extractValueFromSingleKeyModel` property
to have the value in single-key models extracted and serialized directly rather than
as a map of model attributes.
by using the `modelKeys` property. You can also use the `extractValueFromSingleKeyModel`
property to have the value in single-key models extracted and serialized directly rather
than as a map of model attributes.
You can customize JSON mapping as needed by using Jackson's provided
annotations. When you need further control, you can inject a custom `ObjectMapper`
@ -2044,9 +2044,9 @@ serializers and deserializers for specific types.
`MappingJackson2XmlView` uses the
https://github.com/FasterXML/jackson-dataformat-xml[Jackson XML extension's] `XmlMapper`
to render the response content as XML. If the model contains multiples entries, you should explicitly set the
object to be serialized by using the `modelKey` bean property.
If the model contains a single entry, it is serialized automatically.
to render the response content as XML. If the model contains multiple entries, you should
explicitly set the object to be serialized by using the `modelKey` bean property. If the
model contains a single entry, it is serialized automatically.
You can customized XML mapping as needed by using JAXB or Jackson's provided
annotations. When you need further control, you can inject a custom `XmlMapper`
@ -2060,12 +2060,11 @@ you need to provide serializers and deserializers for specific types.
== XML Marshalling
The `MarshallingView` uses an XML `Marshaller` (defined in the `org.springframework.oxm`
package) to render the response content as XML. You can explicitly set the object to be marshalled
by using a `MarshallingView` instance's `modelKey` bean property. Alternatively, the view
iterates over all model properties and marshals the first type that is supported
package) to render the response content as XML. You can explicitly set the object to be
marshalled by using a `MarshallingView` instance's `modelKey` bean property. Alternatively,
the view iterates over all model properties and marshals the first type that is supported
by the `Marshaller`. For more information on the functionality in the
`org.springframework.oxm` package, see
<<data-access.adoc#oxm,Marshalling XML using O/X Mappers>>.
`org.springframework.oxm` package, see <<data-access.adoc#oxm,Marshalling XML using O/X Mappers>>.

View File

@ -2491,11 +2491,11 @@ Spring MVC has two main abstractions in support of flash attributes. `FlashMap`
to hold flash attributes, while `FlashMapManager` is used to store, retrieve, and manage
`FlashMap` instances.
Flash attribute support is always "`on`" and does not need to enabled explicitly. However,
if not used, it never causes HTTP session creation. On each request, there is an "`input`"
`FlashMap` with attributes passed from a previous request (if any) and an "`output`"
`FlashMap` with attributes to save for a subsequent request. Both `FlashMap` instances
are accessible from anywhere in Spring MVC through static methods in
Flash attribute support is always "`on`" and does not need to be enabled explicitly.
However, if not used, it never causes HTTP session creation. On each request, there is an
"`input`" `FlashMap` with attributes passed from a previous request (if any) and an
"`output`" `FlashMap` with attributes to save for a subsequent request. Both `FlashMap`
instances are accessible from anywhere in Spring MVC through static methods in
`RequestContextUtils`.
Annotated controllers typically do not need to work with `FlashMap` directly. Instead, a