Commit Graph

578 Commits

Author SHA1 Message Date
Chris Beams b72cca5403 Fix memory leak in serializable bean factory management (SPR-7502)
GenericApplicationContext and AbstractRefreshableApplicationContext
implementations now call DefaultListableBeanFactory.setSerializationId()
only upon successful refresh() instead of on instantiation of the
context, as was previously the case with GAC.

DLBF.setSerializationId() adds the beanFactory to the *static*
DLBF.serializableFactories map, and while calling close() on the
application context removes entries from that map, it does so only if
the context is currently active (i.e. refresh() has been called).

Also, cancelRefresh() has been overridden in GAC just as it has been
in ARAC to accomodate the possibility of a BeansException being thrown.
In this case, the beanFactory serializationId will be nulled out and
the beanFactory removed from the serializableFactories map.

The SerializableBeanFactoryMemoryLeakTests test case provides full
coverage of these scenarios.
2010-08-27 10:53:20 +00:00
Juergen Hoeller ee04046ed7 polishing 2010-08-15 23:04:19 +00:00
Juergen Hoeller 3cf22a0255 lazy creation of MessageFormats 2010-08-15 23:04:02 +00:00
David Syer 5109501d16 SPR-7463: switched to instance variable 2010-08-14 11:09:42 +00:00
Juergen Hoeller faad0f4bb1 AutodetectCapableMBeanInfoAssembler signature consistently refers to Class<?> (SPR-7405) 2010-07-29 20:29:32 +00:00
Juergen Hoeller 3e0003a1a0 TaskExecutorFactoryBean (as used by task:executor) exposes full ThreadPoolTaskExecutor type (SPR-7403) 2010-07-28 17:39:03 +00:00
Juergen Hoeller f04febaf2d fixed @PathVariable regression in combination with ConversionService usage on DataBinder 2010-07-26 20:14:57 +00:00
Juergen Hoeller 7304c09021 Spring field error arguments include actually declared annotation attributes in alphabetical order (SPR-6730) 2010-07-21 14:24:10 +00:00
Juergen Hoeller 11886f2149 polishing 2010-07-20 20:02:43 +00:00
Juergen Hoeller 1dce03af78 JSR-303 Pattern message resolvable through Spring MessageSource (despite special characters; SPR-7329) 2010-07-20 20:02:23 +00:00
David Syer e26fc66523 SPR-7384: switch to using 1-12 for month numbers 2010-07-20 15:25:00 +00:00
Juergen Hoeller 263fabb0fc JSP EvalTag resolves "@myBeanName" references in expressions against the WebApplicationContext (SPR-7312); for consistency, expressions in an ApplicationContext support the same syntax against the local BeanFactory 2010-07-12 19:36:26 +00:00
Juergen Hoeller 3f31a1cf75 added "validationMessageSource" property to LocalValidatorFactoryBean, for Spring-based messages (SPR-7307) 2010-06-28 22:08:31 +00:00
Juergen Hoeller 41d6f8e9ed turned formatter implementations non-final 2010-06-23 19:34:29 +00:00
Juergen Hoeller 2a140addfd added EmbeddedValueResolver support to FormattingConversionServiceFactoryBean (SPR-7087) 2010-06-08 20:40:54 +00:00
Juergen Hoeller 65622bd546 revised DefaultLifecycleProcessor's handling of circular dependencies to avoid stack overflow (SPR-7266) 2010-06-08 10:08:33 +00:00
Juergen Hoeller 392accd910 introduced EmbeddedValueResolverAware callback interface for convenient placeholder resolution 2010-06-07 22:41:21 +00:00
Juergen Hoeller 8446fd1b26 added assertions for correct postProcess invocation order 2010-06-07 22:36:19 +00:00
Juergen Hoeller 5f9b2db90b turn NotReadablePropertyException into JSR-303 oriented IllegalStateException 2010-06-07 22:30:11 +00:00
Juergen Hoeller 5b420e20c7 revised TaskScheduler javadoc (SPR-7253) 2010-06-07 20:52:12 +00:00
Juergen Hoeller dea5918d66 CronTrigger defensively protects itself against accidental re-fires if a task runs too early (SPR-7004) 2010-05-26 20:35:42 +00:00
David Syer b4af04ba9d SPR-7239: fix CronTrigger 2010-05-26 17:41:54 +00:00
Juergen Hoeller b90fa49ebc polishing 2010-05-25 14:23:08 +00:00
Juergen Hoeller bca067abb2 ScheduledTaskRegistrar (as used for @Scheduled processing) properly shuts down its default executor (SPR-6901) 2010-05-25 14:22:49 +00:00
Juergen Hoeller 6fe5871e91 check for "org.joda.time.LocalDate" in order to catch JodaTime 1.3 and higher only (SPR-7222) 2010-05-20 08:30:32 +00:00
Juergen Hoeller 469e30b507 refined LifecycleProcessor exception handling, properly wrapping a start exception from a bean (SPR-7106) 2010-05-19 19:44:57 +00:00
Juergen Hoeller 2c2df7f555 consistent postProcessBeanFactory treatment for BeanDefinitionRegistryPostProcessors (SPR-7167) 2010-05-17 22:40:15 +00:00
Chris Beams 57a503b274 BeanDefinitionRegistryPostProcessors' postProcessBeanDefinitionRegistry() method now gets called before postProcessBeanFactory() (SPR-7167) 2010-05-17 16:21:36 +00:00
Juergen Hoeller 738d84f75c filter for duplicate listeners in "getApplicationListeners()" as well (SPR-7204) 2010-05-16 19:08:12 +00:00
Juergen Hoeller 68055ba4c9 AsyncAnnotationBeanPostProcessor consistently adds @Async processing as first Advisor in the chain (SPR-7147) 2010-05-13 22:13:29 +00:00
Juergen Hoeller 59d2d35f4a polishing 2010-05-13 14:44:34 +00:00
Juergen Hoeller 103c1aa82f exclude abstract lazy-init beans from MBean exposure as well (SPR-6784) 2010-05-13 14:38:58 +00:00
Costin Leau 159f98728e SPR-7137
+ fixed incorrect message when unregistering services from passed in registries
2010-04-29 14:42:24 +00:00
Keith Donald 64d6a42dfd improved conversion system logging, collection converter simplification/polish, several optimizations, annotation-driven formatting caching 2010-04-17 04:43:28 +00:00
Juergen Hoeller 53b6e1c1b0 fixed DataBinder's conversion error handling for direct field access with ConversionService (SPR-6953) 2010-03-24 17:40:45 +00:00
Juergen Hoeller 2c2cf32b8a polishing 2010-03-24 10:35:50 +00:00
Juergen Hoeller 296aa96d71 AopUtils.getTargetClass(...) never returns null (SPR-7011) 2010-03-22 18:31:13 +00:00
Juergen Hoeller a2c3274b8e fixed double fixedField call for getFieldType (SPR-7019) 2010-03-22 15:08:57 +00:00
Juergen Hoeller 4c39f90466 made CronSequenceGenerator public (SPR-6920) 2010-03-12 19:34:45 +00:00
David Syer 8d7df01d73 RESOLVED - issue SPR-6955, SPR-6901 added DisposableBean to TaskExecutorFactoryBean 2010-03-08 12:13:30 +00:00
Juergen Hoeller 9ede9fe697 "conversionService" bean gets ignored if not of type ConversionService (SPR-6916) 2010-03-04 11:27:09 +00:00
Juergen Hoeller 60ac239091 BeanDefinitionReader and ClassPath/FileSystemXmlApplicationContext use varargs where possible (SPR-6849) 2010-02-16 11:59:29 +00:00
Juergen Hoeller 870507cc36 context-specific "conversionService" bean may refer to annotation-configured converter beans (SPR-6800) 2010-02-15 00:42:39 +00:00
Juergen Hoeller cdee538129 fixed rendering of select options for multi-list (SPR-6799) 2010-02-15 00:04:30 +00:00
Juergen Hoeller cef44f6d53 made PersistenceAnnotationBeanPostProcessor's JNDI API references optional - for compatibility with Google App Engine (SPR-6679) 2010-02-11 11:36:33 +00:00
Juergen Hoeller 03e9e4568f avoid double closing in case of shutdown hook (SPR-6793) 2010-02-10 13:49:51 +00:00
Juergen Hoeller b670b19429 setAutoGrowNestedPaths throws an IllegalStateException if being called too late (SPR-6718) 2010-02-09 15:54:48 +00:00
Costin Leau a9386f5c79 SPR-5246
+ clarify order of annotation and XML injection
2010-02-09 11:17:07 +00:00
Juergen Hoeller 82178b8d93 ignore IllegalStateException when removing shutdown hook (SPR-6793) 2010-02-04 12:30:39 +00:00
Costin Leau 4f0876de39 SPR-6794
+ added setter for encoding (in case the default UTF-8 is not enough)
2010-02-04 10:13:04 +00:00