- 11 7月, 2012 2 次提交
-
-
由 Rossen Stoyanchev 提交于
Previously DefaultHandlerExceptionResolver did not handle BindException but after this change it does. A BindException is raised when an @ModelAttribute annotated argument is not followed by a BindingResult argument. Hence this is unlikely to affect browser rendering. For programmatic clients however this change ensures an unhandled BindException is at least turned into a 400 error. Issue: SPR-9310
-
由 Rossen Stoyanchev 提交于
The Atom/RSS message converters are now registered ahead of the Jackson and the JAXB2 message converters by default. Since the Atom and RSS converters convert to and from very specific object types Feed and Channel respectively, that shouldn't introduce any regressions and will work more intuitively when the requested media type is "*/*". Issue: SPR-9054
-
- 10 7月, 2012 4 次提交
-
-
由 Chris Beams 提交于
* SPR-9576: Include **/*.aj files in *-sources.jar files
-
由 Rob Winch 提交于
Previously only **/*.java sources files were included in the sources jars. This is not ideal for the spring-aspects jar nor does it match prior versions of the sources jars. Now **/*.aj files are included in addition to the **/*.java files. Issue: SPR-9576
-
由 Rossen Stoyanchev 提交于
Issue: SPR-9112
-
由 Rossen Stoyanchev 提交于
Before this change @ExceptionHandler methods could be located in and apply locally within a controller. The change makes it possible to have such methods applicable globally regardless of the controller that raised the exception. The easiest way to do that is to add them to a class annotated with `@ExceptionResolver`, a new annotation that is also an `@Component` annotation (and therefore works with component scanning). It is also possible to register classes containing `@ExceptionHandler` methods directly with the ExceptionHandlerExceptionResolver. When multiple `@ExceptionResolver` classes are detected, or registered directly, the order in which they're used depends on the the `@order` annotation (if present) or on the value of the order field (if the Ordered interface is implemented). Issue: SPR-9112
-
- 07 7月, 2012 3 次提交
-
-
由 Juergen Hoeller 提交于
-
由 Juergen Hoeller 提交于
Issue: SPR-9480
-
由 Juergen Hoeller 提交于
Issue: SPR-9487
-
- 06 7月, 2012 3 次提交
-
-
由 Chris Beams 提交于
Prior to this change, PropertySourcesPropertyResolver (and therefore all AbstractEnvironment) implementations failed to resolve nested placeholders as in the following example: p1=v1 p2=v2 p3=${v1}:{$v2} Calls to PropertySource#getProperty for keys 'p1' and 'v1' would successfully return their respective values, but for 'p3' the return value would be the unresolved placeholders. This behavior is inconsistent with that of PropertyPlaceholderConfigurer. PropertySourcesPropertyResolver #getProperty variants now resolve any nested placeholders recursively, throwing IllegalArgumentException for any unresolvable placeholders (as is the default behavior for PropertyPlaceholderConfigurer). See SPR-9569 for an enhancement that will intoduce an 'ignoreUnresolvablePlaceholders' switch to make this behavior configurable. This commit also improves error output in PropertyPlaceholderHelper#parseStringValue by including the original string in which an unresolvable placeholder was found. Issue: SPR-9473, SPR-9569
-
由 Rossen Stoyanchev 提交于
Before this change HandlerMethod used ClassUtils.getUserClass(Class<?>) to get the real user class, and not one generated by CGlib. However it failed to that under all circumstances. This change fixes that. Issue: SPR-9490
-
由 Rossen Stoyanchev 提交于
Before this change the StringHttpMessageConverter used a fixed charset "ISO-8859-1" if the requested content type did not specify one. This change adds a defaultCharset field and a constructor to configure it in StringHttpMessageConverter. Issue: SPR-9487
-
- 05 7月, 2012 7 次提交
-
-
由 Juergen Hoeller 提交于
-
由 Juergen Hoeller 提交于
-
由 Juergen Hoeller 提交于
Issue: SPR-9287
-
由 Juergen Hoeller 提交于
moved getInputStream() not-null requirement to InputStreamSource itself; removed misleading "throws IllegalStateException" declaration Issue: SPR-9561
-
由 Juergen Hoeller 提交于
Issue: SPR-9521
-
由 Juergen Hoeller 提交于
Issue: SPR-9528
-
由 Juergen Hoeller 提交于
Issue: SPR-9536
-
- 03 7月, 2012 3 次提交
-
-
由 Rossen Stoyanchev 提交于
Before this change the HandlerExecitionChain logged errors each time a an AsyncHandlerInterceptor returned a null async Callable, a condition which is acceptable. SPR-9524
-
由 Rossen Stoyanchev 提交于
* SPR-9530: Improve SimpleStreamingClientHttpRequest performance
-
由 Phillip Webb 提交于
Ensure that NonClosingOutputStream calls with a byte array call the corresponding methods of the underlying OutputStream rather than relying on the default NonClosingOutputStream implementation, which writes one bte at a time. This significantly improves performance. Issues: SPR-9530
-
- 28 6月, 2012 2 次提交
-
-
由 Chris Beams 提交于
Issue: SPR-9443, SPR-6847, SPR-9446, SPR-9444, SPR-9439, SPR-9302, SPR-9507, SPR-9238, SPR-9397, SPR-9406, SPR-9502
-
由 Chris Beams 提交于
@Async executor qualification has been backported to 3.1.2. This commit updates all @since tags appropriately, as well as carrying over the changes backported to the spring-task-3.1 schema. Issue: SPR-6847, SPR-9443
-
- 27 6月, 2012 1 次提交
-
-
由 Rossen Stoyanchev 提交于
Issue: SPR-9289
-
- 26 6月, 2012 5 次提交
-
-
由 Rossen Stoyanchev 提交于
Return an empty map when there are no path variables, rather than raising an exception. This is consistent with similar resolvers for extracting headers and request parameters. Issue: SPR-9289
-
由 Rossen Stoyanchev 提交于
Following the introduction of ContentNegotiationManager that allows, among other things, to configure the file extensions to use for content negotiation, this change adds "smart" suffix pattern match that matches against the configured file extensions only rather than against any extension. Given the request mapping "/jobs/{jobName}" and one configured file extension ("json"), a request for "/jobs/my.job" will select the pattern "/jobs/{jobName}" while a request for "/jobs/my.job.json" will select the pattern "/jobs/{jobName}.json". Previously, both requests would have resulted in the pattern "/jobs/{jobName}.*". Issue: SPR-7632, SPR-8474
-
由 Rossen Stoyanchev 提交于
Issue: SPR-8410, SPR-8417, SPR-8418,SPR-8416, SPR-8419,SPR-7722
-
由 Rossen Stoyanchev 提交于
Issue: SPR-7985
-
由 Chris Beams 提交于
The exact text above the "Staying in touch" section caused "Staying in touch" to lose it's formatting as a second-level heading. Adding " for details" to the sentence above works around the problem.
-
- 25 6月, 2012 2 次提交
-
-
由 Chris Beams 提交于
Issue: SPR-9536
-
由 Arjen Poutsma 提交于
XStreamMarshaller should convert XStream StreamException to Spring exception in case of unmarshalling an empty stream. Issue: SPR-9536
-
- 23 6月, 2012 1 次提交
-
-
由 Rossen Stoyanchev 提交于
The HTTP PATCH method is now supported whereever HTTP methods are used. Annotated controllers can be mapped to RequestMethod.PATCH. On the client side the RestTemplate execute(..) and exchange(..) methods can be used with HttpMethod.PATCH. In terms of HTTP client libraries, Apache HttpComponents HttpClient version 4.2 or later is required (see HTTPCLIENT-1191). The JDK HttpURLConnection does not support the HTTP PATCH method. Issue: SPR-7985
-
- 22 6月, 2012 1 次提交
-
-
由 Rossen Stoyanchev 提交于
Introduced ContentNeogtiationStrategy for resolving the requested media types from an incoming request. The available implementations are based on path extension, request parameter, 'Accept' header, and a fixed default content type. The logic for these implementations is based on equivalent options, previously available only in the ContentNegotiatingViewResolver. Also in this commit is ContentNegotiationManager, the central class to use when configuring content negotiation options. It accepts one or more ContentNeogtiationStrategy instances and delegates to them. The ContentNeogiationManager can now be used to configure the following classes: - RequestMappingHandlerMappingm - RequestMappingHandlerAdapter - ExceptionHandlerExceptionResolver - ContentNegotiatingViewResolver Issue: SPR-8410, SPR-8417, SPR-8418,SPR-8416, SPR-8419,SPR-7722
-
- 21 6月, 2012 1 次提交
-
-
由 Chris Beams 提交于
PropertySourcesPropertyResolver#containsProperty now calls #containsProperty on each underlying PropertySource instead of calling #getProperty and checking for null. Issue: SPR-9529
-
- 20 6月, 2012 5 次提交
-
-
由 Sam Brannen 提交于
The reference manual currently documents the wrong file name for the default data SQL script used by EmbeddedDatabaseBuilder. In addition, the testing chapter of the reference manual does not link to the testing section of the JDBC chapter. - Updated the "Testing data access logic with an embedded database" section of the reference manual appropriately. - Added a new paragraph to the "JDBC Testing Support" section of the testing chapter which cross references the "Testing data access logic with an embedded database" section. Issue: SPR-9467
-
由 Sam Brannen 提交于
Issue: SPR-9493
-
由 Sam Brannen 提交于
-
由 Chris Beams 提交于
Commit aa415d7c introduced JacksonObjectMapperFactoryBean and associated tests, but with Windows (CRLF) line endings instead of the conventional Unix (LF) line endings. This commit converts these files to LF endings using the handy `dos2unix` utility. Issue: SPR-9125
-
由 Sam Brannen 提交于
* SPR-9493: Infer return type of parametrized factory methods
-