Commit Graph
291 Commits
Author SHA1 Message Date
Rossen Stoyanchev 4992938ee4 SPR-8247
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4229 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-20 21:41:17 +00:00
Rossen Stoyanchev 6aaff404ab SPR-8255
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4228 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-20 08:43:57 +00:00
Rossen Stoyanchev aae28ee298 SPR-8214 review unit tests
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4227 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-15 18:42:58 +00:00
Rossen Stoyanchev 6f8fa24e59 SPR-8248
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4226 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-15 06:42:18 +00:00
Rossen Stoyanchev 1660ec4b0e SPR-8214 Javadoc and polish
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4224 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-13 23:15:19 +00:00
Rossen Stoyanchev 148a1378af Add UriTemplateServletHandlerMethodTests
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4214 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-11 17:18:07 +00:00
Rossen Stoyanchev 8246d7023d Add UriTemplateServletHandlerMethodTests
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4213 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-11 17:17:51 +00:00
Rossen Stoyanchev 68a7e5b3e2 SPR-8234 Switch to strongly typed custom argument resolvers property
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4212 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-11 15:50:04 +00:00
Rossen Stoyanchev 69189ef12b SPR-8234 Argument resolver and return value handler configuration improvements
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4210 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-11 12:37:33 +00:00
Rossen Stoyanchev 238a2bc815 Fix issues encountered in Greenhouse
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4208 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-10 06:01:11 +00:00
Arjen Poutsma ca89d6e123 SPR-7354 - Added equivalent of JAX-RS @Consumes to Spring MVC
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4198 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-08 13:33:58 +00:00
Arjen Poutsma a37c85f4fc SPR-7354 - Added equivalent of JAX-RS @Consumes to Spring MVC
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4197 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-08 12:06:53 +00:00
Arjen Poutsma 16bae7e143 SPR-7354 - Added equivalent of JAX-RS @Consumes to Spring MVC
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4194 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-08 09:26:17 +00:00
Rossen Stoyanchev bdc1544091 Javadoc updates
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4193 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-07 22:16:41 +00:00
Rossen Stoyanchev c0692e2ddf ModelAndViewContainer related refinements
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4192 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-07 18:09:28 +00:00
Rossen Stoyanchev 64fbd3740d SPR-8217 update MVC namespace to use HandlerMethod infrastructure
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4189 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-06 20:28:47 +00:00
Rossen Stoyanchev 5338b4f012 Configurable arg resolvers and return value handlers
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4188 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-06 16:55:21 +00:00
Rossen Stoyanchev bc794c1304 Replace ModelAndViewContainer parameter with Object
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4187 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-06 15:30:19 +00:00
Rossen Stoyanchev 26f332b600 SPR-8216 Replicate ServletAnnotationControllerTests for HandlerMethod infrastructure
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4186 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-06 15:30:01 +00:00
Rossen Stoyanchev 674fd869b5 SPR-8215 Fix issue with tests compiling
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4185 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-06 11:52:18 +00:00
Rossen Stoyanchev cd93c27598 SPR-8215 Move HandlerMethod code into trunk
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4184 50f2f4bb-b051-0410-bef5-90022cba6387
2011-04-06 11:30:59 +00:00
Rossen Stoyanchev 8f5dc17ebc SPR-6932 Add option to extract value from single-key models in MappingJacksonJsonView
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4058 50f2f4bb-b051-0410-bef5-90022cba6387
2011-03-04 14:19:14 +00:00
Rossen Stoyanchev ffb76a6046 SPR-2692 Add URI template support to RedirectView
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4057 50f2f4bb-b051-0410-bef5-90022cba6387
2011-03-03 15:54:29 +00:00
Rossen Stoyanchev 00fde776d2 SPR-7976 Add MvcInterceptors features.
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4030 50f2f4bb-b051-0410-bef5-90022cba6387
2011-02-22 16:13:04 +00:00
Chris Beams dc22760978 Introduce FeatureSpecification support
Introduce FeatureSpecification interface and implementations

    FeatureSpecification objects decouple the configuration of
    spring container features from the concern of parsing XML
    namespaces, allowing for reuse in code-based configuration
    (see @Feature* annotations below).

    * ComponentScanSpec
    * TxAnnotationDriven
    * MvcAnnotationDriven
    * MvcDefaultServletHandler
    * MvcResources
    * MvcViewControllers

Refactor associated BeanDefinitionParsers to delegate to new impls above

    The following BeanDefinitionParser implementations now deal only
    with the concern of XML parsing.  Validation is handled by their
    corresponding FeatureSpecification object.  Bean definition creation
    and registration is handled by their corresponding
    FeatureSpecificationExecutor type.

    * ComponentScanBeanDefinitionParser
    * AnnotationDrivenBeanDefinitionParser (tx)
    * AnnotationDrivenBeanDefinitionParser (mvc)
    * DefaultServletHandlerBeanDefinitionParser
    * ResourcesBeanDefinitionParser
    * ViewControllerBeanDefinitionParser

Update AopNamespaceUtils to decouple from XML (DOM API)

    Methods necessary for executing TxAnnotationDriven specification
    (and eventually, the AspectJAutoProxy specification) have been
    added that accept boolean arguments for whether to proxy
    target classes and whether to expose the proxy via threadlocal.

    Methods that accepted and introspected DOM Element objects still
    exist but have been deprecated.

Introduce @FeatureConfiguration classes and @Feature methods

    Allow for creation and configuration of FeatureSpecification objects
    at the user level.  A companion for @Configuration classes allowing
    for completely code-driven configuration of the Spring container.

    See changes in ConfigurationClassPostProcessor for implementation
    details.

    See Feature*Tests for usage examples.

    FeatureTestSuite in .integration-tests is a JUnit test suite designed
    to aggregate all BDP and Feature* related tests for a convenient way
    to confirm that Feature-related changes don't break anything.
    Uncomment this test and execute from Eclipse / IDEA. Due to classpath
    issues, this cannot be compiled by Ant/Ivy at the command line.

Introduce @FeatureAnnotation meta-annotation and @ComponentScan impl

    @FeatureAnnotation provides an alternate mechanism for creating
    and executing FeatureSpecification objects.  See @ComponentScan
    and its corresponding ComponentScanAnnotationParser implementation
    for details.  See ComponentScanAnnotationIntegrationTests for usage
    examples

Introduce Default[Formatting]ConversionService implementations

    Allows for convenient instantiation of ConversionService objects
    containing defaults appropriate for most environments.  Replaces
    similar support originally in ConversionServiceFactory (which is now
    deprecated). This change was justified by the need to avoid use
    of FactoryBeans in @Configuration classes (such as
    FormattingConversionServiceFactoryBean). It is strongly preferred
    that users simply instantiate and configure the objects that underlie
    our FactoryBeans. In the case of the ConversionService types, the
    easiest way to do this is to create Default* subtypes. This also
    follows convention with the rest of the framework.

Minor updates to util classes

    All in service of changes above. See diffs for self-explanatory
    details.

    * BeanUtils
    * ObjectUtils
    * ReflectionUtils

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3954 50f2f4bb-b051-0410-bef5-90022cba6387
2011-02-08 14:42:33 +00:00
Rossen Stoyanchev 0d06b35924 SPR-7327 Add minOccurs=0 to sub-elements of mvc:annotation-driven and add more tests
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3938 50f2f4bb-b051-0410-bef5-90022cba6387
2011-02-03 22:56:13 +00:00
Rossen Stoyanchev 5c337da704 SPR-7327 add <mvc:argument-resolvers> namespace element
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3937 50f2f4bb-b051-0410-bef5-90022cba6387
2011-02-03 15:22:00 +00:00
Rossen Stoyanchev 26c92551dd SPR-7912 Add tests for FormattingConversionServiceFactoryBean, update reference docs, and remove mvc:formatters
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3928 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-27 11:26:19 +00:00
Rossen Stoyanchev 174f609be4 SPR-7732, SPR-6506, SPR-7191 MVC Namespace improvements to the annotation-driven element - custom message converters, formatters, and message codes resolver.
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3920 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-25 17:49:57 +00:00
Arjen Poutsma 38282a38bf SPR-6902 - @ResponseBody does not work with @ExceptionHandler
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3898 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-10 12:26:57 +00:00
Keith Donald bdb6b8221c failing test case
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3894 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-07 20:58:20 +00:00
Keith Donald f886af7bee out of memory test case
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3893 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-07 20:56:42 +00:00
Keith Donald d269c050cc sp7839 - map autogrow, including auto-grow support for map values
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3892 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-07 19:22:45 +00:00
Keith Donald da069e5972 ignore failing tests temp for array nesting level bug and map autogrow bug
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3890 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-07 17:59:51 +00:00
Keith Donald 78643f8577 fixed bug related to array autogrow
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3889 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-07 17:54:17 +00:00
Keith Donald c6481d56de ignore failing test
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3888 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-07 17:29:00 +00:00
Keith Donald 7d9e728c55 array autogrow on set e.g. array[0]=foo
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3887 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-07 17:28:18 +00:00
Chris Beams 5a7d2a91ba Introduce ApplicationContextInitializer interface
Designed primarily for use in conjunction with web applications
to provide a convenient mechanism for configuring the container
programmatically.

ApplicationContextInitializer implementations are specified through the
new "contextInitializerClasses" servlet context parameter, then detected
and invoked by ContextLoader in its customizeContext() method.

In any case, the semantics of ApplicationContextInitializer's
initialize(ConfigurableApplicationContext) method require that
invocation occur *prior* to refreshing the application context.

ACI implementations may also implement Ordered/PriorityOrdered and
ContextLoader will sort instances appropriately prior to invocation.

Specifically, this new support provides a straightforward way to
programmatically access the container's Environment for the purpose
of adding, removing or otherwise manipulating PropertySource objects.

See Javadoc for further details.

Also note that ApplicationContextInitializer semantics overlap to
some degree with Servlet 3.0's notion of ServletContainerInitializer
classes. As Spring 3.1 development progresses, we'll likely see
these two come together and further influence one another.

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3882 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-07 09:57:57 +00:00
Keith Donald 10886eeefd Fixed bugs in bean wrapper related to nesting levels on method parameters
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3854 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 19:18:29 +00:00
Keith Donald caf5e90197 failing nested list binding
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3853 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 17:10:05 +00:00
Keith Donald 3b5b442ffd ignore failing map test case
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3852 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 16:59:47 +00:00
Keith Donald cf4062ed33 method naming improvements; applyIndexObject call for array indexing
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3851 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 16:54:03 +00:00
Keith Donald 776d4f4f9a spr 7839 reproduce
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3849 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 06:38:14 +00:00
Keith Donald ed632c2a4a spr7766
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3847 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 06:05:34 +00:00
Arjen Poutsma bcad0df063 SPR-7707 - Unexpected behavior with class-level @RequestMappings
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3793 50f2f4bb-b051-0410-bef5-90022cba6387
2010-11-08 14:56:35 +00:00
Arjen Poutsma ff620e1f60 SPR-5367 - PathVariable mappings are greedy over hard coded mappings
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3750 50f2f4bb-b051-0410-bef5-90022cba6387
2010-10-13 12:03:26 +00:00
Juergen Hoeller 33c4c04276 made ResourceHttpRequestHandlerTests more reliable (SPR-7565)
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3693 50f2f4bb-b051-0410-bef5-90022cba6387
2010-09-29 13:14:18 +00:00
Juergen Hoeller 9e04940e1c fixed @MVC processing of parameter-level annotations to work with interface-based proxies again (SPR-7483)
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3658 50f2f4bb-b051-0410-bef5-90022cba6387
2010-09-08 14:45:00 +00:00
Juergen Hoeller f835d5f604 revised @RequestParam processing to support CSV-to-array/collection binding with ConversionService (SPR-7479)
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3657 50f2f4bb-b051-0410-bef5-90022cba6387
2010-09-08 13:56:42 +00:00
Juergen Hoeller ea2bbbb3be allow for writing the response directly in a Portlet @ExceptionHandler method (like in the Servlet equivalent)
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3645 50f2f4bb-b051-0410-bef5-90022cba6387
2010-09-06 21:43:26 +00:00