Commit Graph

3721 Commits

Author SHA1 Message Date
Keith Donald 66814f1235 forNestedType usage clarification
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3873 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-06 18:33:50 +00:00
Sam Brannen b8d53d2ba7 Updates to readme and changelog files regarding 3.1.0.M1
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3872 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-06 12:05:48 +00:00
Keith Donald 6756901e84 temp added ignore on 2 new failing tests until time to investigate
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3871 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-06 12:00:51 +00:00
Keith Donald 14f1bb5e67 temp added ignore on 2 new failing tests until time to investigate
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3870 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-06 11:41:30 +00:00
Chris Beams 1f8637d944 Introduce and integrate JndiPropertySource
DefaultWebEnvironment automatically adds a JndiPropertySource if
a "jndiPropertySourceEnabled" property is detected in any of the
other other default property sources.

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3869 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-06 07:43:29 +00:00
Chris Beams 6364c02427 Polish Javadoc for PropertySource implementations
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3868 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-06 07:43:03 +00:00
Keith Donald ed2a257e69 added initial support for handling unknown nested type values when converting collections; now favor factory method for constructing nested type descriptors for clarity (made constructor private); improved javadoc
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3867 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-06 05:14:49 +00:00
Chris Beams 480aa5d993 Document createEnvironment() methods
in AbstractApplicationContext and SpringContextResourceAdapter

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3866 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 22:25:42 +00:00
Chris Beams 0821b2c6c2 Polish (Mutable)PropertySources
* PropertySources is now an Iterable<PropertySource> in favor of
  exposing an asList() method
* Otherwise reduced the set of methods exposed by PropertySources to the
  absolute minimum
* Added Javadoc for both types and all methods

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3865 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 22:25:24 +00:00
Chris Beams d29eae3ba0 Remove dead code
* removed registerStandardBeanFactoryPostProcessors() methods
* removed commented-out test from PropertyResourceConfigurerTests

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3864 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 22:24:55 +00:00
Chris Beams 3aaa6cf23a Refactor PropertyPlaceholderConfigurer hierarchy
PropertySourcesPlaceholderConfigurer accommodates recent changes in
Environment and PropertySource APIs, e.g. no longer assuming enumerability
of property names.

PSPC reuses as much functionality as possible from
AbstractPropertyPlaceholderConfigurer, but overrides
postProcessBeanFactory() and defines its own variation on
processProperties() in order to accept a PropertyResolver rather than
a PropertySource.

AbstractPropertyPlaceholderConfigurer introduces doProcessProperties()
method to encapsulate that which is actually common, such as the
visiting of each bean definition once a StringValueResolver has been
created in the subclass.

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3863 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 22:24:37 +00:00
Chris Beams 835a3f8d64 Refactor Environment and PropertySource
* Environment now extends PropertyResolver
* Environment no longer exposes resolver and sources
* PropertySource is String,Object instead of String,String
* PropertySource no longer assumes enumerability of property names
* Introduced EnumerablePropertySource for those that do have enumerable property names

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3862 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 22:24:14 +00:00
Chris Beams 520579d886 Update build instructions in readme
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3861 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 22:22:58 +00:00
Juergen Hoeller a0ee194603 reduced BeanDefinition footprint by initializing Sets and Maps with 0 (SPR-7491)
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3860 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 19:59:00 +00:00
Juergen Hoeller 2e6f39922d revised javadoc on "exactDateLength" (SPR-7759)
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3859 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 19:55:24 +00:00
Juergen Hoeller 3107fec82d fixed aspects bundle to declare dependencies for @Async aspect as well (SPR-7702)
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3858 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 19:50:23 +00:00
Juergen Hoeller ad67d91646 fixed AbstractBindingResult to avoid NPE in "hashCode()" if target is null (SPR-7682)
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3857 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 19:42:35 +00:00
Juergen Hoeller 0b82100930 ProxyCreationContext uses "ThreadLocal.remove()" over "ThreadLocal.set(null)" as well
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3856 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 19:32:02 +00:00
Juergen Hoeller f2ef44a1a5 EhCacheManagerFactoryBean properly closes "ehcache.xml" input stream, if any (SPR-7813)
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3855 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 19:29:07 +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
Juergen Hoeller 4ac5814e5a fixed potential InjectionMetadata NPE when using SpringBeanAutowiringInterceptor (SPR-7686)
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3850 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 16:08:43 +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 ddc3cab014 spr7816
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3848 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 06:23:04 +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
Keith Donald 1e2a8083a1 TypeDescriptor cleanup and general polishing; fixed a number of bugs related to TypeDescriptor usage in client code across beans and spel packages
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3846 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-05 05:49:33 +00:00
Arjen Poutsma dfb8b267ca SPR-7845 - FormHttpMessageConverter.read() always ignores post data when processing request (from Tomcat)
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3845 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-04 11:25:30 +00:00
Michael Isvy 50da443eb3 SPR-7858
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3844 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-04 09:40:39 +00:00
Arjen Poutsma 5f6c1145df SPR-7834 - HttpHeaders.getEtag() mangles the value
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3843 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-03 15:51:23 +00:00
Arjen Poutsma cac2354a85 SPR-7845 - FormHttpMessageConverter.read() always ignores post data when processing request (from Tomcat)
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3842 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-03 14:48:34 +00:00
Arjen Poutsma 241e8f12e0 SPR-7845 - FormHttpMessageConverter.read() always ignores post data when processing request (from Tomcat)
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3841 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-03 14:38:28 +00:00
Chris Beams d00b49dca5 Introduce "Aware" superinterface
All existing *Aware interfaces have been refactored to extend this
new marker interface, serving two purposes:

    * Easy access to a type hierarchy that can answer the question
      "What *Aware interfaces are available?", without requiring
      text-based searches. Also clearly excludes false positives like
      TargetClassAware and ParamAware, which while similarly named,
      are not semantically similar to traditional *Aware interfaces
      in Spring.

    * Minor potential performance improvements in
      AbstractAutowireCapableBeanFactory and
      ApplicationContextAwareProcessor. Both have blocks of sequential
      instanceof checks in order to invoke any *Aware interface callback
      methods. For a bean that implements none of these interfaces,
      the whole sequence can be avoided by guarding first with
          if (bean instanceof Aware) {
              ...
          }

Implementors of custom *Aware-style interfaces (and presumably
the BeanPostProcessors that handle them), are encouraged to refactor to
extending this interface for consistency with the framework as well as
the points above.

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3840 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-03 10:13:57 +00:00
Chris Beams 1ac7b56caf M1 cut of environment, profiles and property work (SPR-7508)
Decomposed Environment interface into PropertySources, PropertyResolver
objects

    Environment interface and implementations are still present, but
    simpler.

    PropertySources container aggregates PropertySource objects;
    PropertyResolver provides search, conversion, placeholder
    replacement. Single implementation for now is
    PropertySourcesPlaceholderResolver

Renamed EnvironmentAwarePropertyPlaceholderConfigurer to
PropertySourcesPlaceholderConfigurer

    <context:property-placeholder/> now registers PSPC by default, else
    PPC if systemPropertiesMode* settings are involved

Refined configuration and behavior of default profiles

    See Environment interface Javadoc for details

Added Portlet implementations of relevant interfaces:

    * DefaultPortletEnvironment
    * PortletConfigPropertySource, PortletContextPropertySource
    * Integrated each appropriately throughout Portlet app contexts

Added protected 'createEnvironment()' method to AbstractApplicationContext

    Subclasses can override at will to supply a custom Environment
    implementation.  In practice throughout the framework, this is how
    Web- and Portlet-related ApplicationContexts override use of the
    DefaultEnvironment and swap in DefaultWebEnvironment or
    DefaultPortletEnvironment as appropriate.

Introduced "stub-and-replace" behavior for Servlet- and Portlet-based
PropertySource implementations

    Allows for early registration and ordering of the stub, then
    replacement with actual backing object at refresh() time.

    Added AbstractApplicationContext.initPropertySources() method to
    support stub-and-replace behavior. Called from within existing
    prepareRefresh() method so as to avoid impact with
    ApplicationContext implementations that copy and modify AAC's
    refresh() method (e.g.: Spring DM).

    Added methods to WebApplicationContextUtils and
    PortletApplicationContextUtils to support stub-and-replace behavior

Added comprehensive Javadoc for all new or modified types and members

Added XSD documentation for all new or modified elements and attributes

    Including nested <beans>, <beans profile="..."/>, and changes for
    certain attributes type from xsd:IDREF to xsd:string

Improved fix for detecting non-file based Resources in
PropertiesLoaderSupport (SPR-7547, SPR-7552)

    Technically unrelated to environment work, but grouped in with
    this changeset for convenience.

Deprecated (removed) context:property-placeholder
'system-properties-mode' attribute from spring-context-3.1.xsd

    Functionality is preserved for those using schemas up to and including
    spring-context-3.0.  For 3.1, system-properties-mode is no longer
    supported as it conflicts with the idea of managing a set of property
    sources within the context's Environment object. See Javadoc in
    PropertyPlaceholderConfigurer, AbstractPropertyPlaceholderConfigurer
    and PropertySourcesPlaceholderConfigurer for details.

Introduced CollectionUtils.toArray(Enumeration<E>, A[])

Work items remaining for 3.1 M2:

    Consider repackaging PropertySource* types; eliminate internal use
    of SystemPropertyUtils and deprecate

    Further work on composition of Environment interface; consider
    repurposing existing PlaceholderResolver interface to obviate need
    for resolve[Required]Placeholder() methods currently in Environment.

    Ensure configurability of placeholder prefix, suffix, and value
    separator when working against an AbstractPropertyResolver

    Add JNDI-based Environment / PropertySource implementatinos

    Consider support for @Profile at the @Bean level

    Provide consistent logging for the entire property resolution
    lifecycle; consider issuing all such messages against a dedicated
    logger with a single category.

    Add reference documentation to cover the featureset.

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3839 50f2f4bb-b051-0410-bef5-90022cba6387
2011-01-03 09:04:34 +00:00
Sam Brannen 924b8e11ea [SPR-7850][SPR-7851] Upgraded to JUnit 4.8.1 and TestNG 5.12.1; added changelog entries for 3.1.0.M1.
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3838 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-30 08:00:58 +00:00
Sam Brannen 3be55ad10b [SPR-7849] work in progress: revising the testing chapter based on internal review.
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3837 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-30 06:19:58 +00:00
Sam Brannen 5f6d5e55d1 [SPR-7849] work in progress: revising the testing chapter based on internal review.
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3836 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-30 05:47:23 +00:00
Sam Brannen f78d0a4afc [SPR-7848] Improved readability, grammar, and formatting of the Container Extension Points section of the reference manual.
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3835 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-30 02:07:22 +00:00
Oliver Gierke 27d390c221 SPR-2946 - Corrected documentation for lazy-init behaviour on Bean(Factory)PostProcessors.
Changed the documentation to correctly state that B(F)PP are instantiated eagerly no matter if they are explicitly marked as to be lazy initialized or the default-lazy-init attribute is used at a <beans /> element.

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3834 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-28 10:06:00 +00:00
Oliver Gierke 5e40c020fb SPR-7674 - Documented value defaulting in Spring EL
Added short note of how to use the Elvis operator for defaulting values in the Spring expression language sections.

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3833 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-28 09:42:58 +00:00
Costin Leau 4e90c0a81f SPR-7308
+ wrapping up cache documentation
+ plug in cache docs

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3832 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-27 18:36:57 +00:00
Chris Beams 7ac69dff5f Normalize indentation of Apache license URL
In accordance with recommendations at
http://www.apache.org/licenses/LICENSE-2.0.html.

A number of classes had strayed from this format, now all
are the same.

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3831 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-22 21:40:19 +00:00
Arjen Poutsma a32894ca31 Removed JDK 1.6 usage
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3830 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-22 10:23:34 +00:00
Costin Leau c84ffae75c SPR-7308
+ draft cache documentation

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3829 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-21 17:13:17 +00:00
Costin Leau 09ed0d0835 SPR-7308
+ fix initialization problem for root object (inside SpEL eval context)
+ add integration tests for root object expressions


git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3828 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-21 15:47:22 +00:00
Costin Leau a010a7f63a SPR-7308
+ add check for null key


git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3827 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-21 15:46:37 +00:00
Arjen Poutsma a3583fd5c4 SPR-7789 - FormHttpMessageConverter does not honor the charset in the content type when writing a form and uses a wrong default charset
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3826 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-20 16:56:14 +00:00
Arjen Poutsma bc235c5b03 SPR-7789 - FormHttpMessageConverter does not honor the charset in the content type when writing a form and uses a wrong default charset
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3825 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-20 16:50:44 +00:00
Arjen Poutsma cbdec821c4 SPR-7706 - 304 responses should not have non-0 Content-Length
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3824 50f2f4bb-b051-0410-bef5-90022cba6387
2010-12-20 16:32:58 +00:00