Skip to content

3.0.1 Release

Compare
Choose a tag to compare
@spring-projects-issues spring-projects-issues released this 17 Jan 15:46
· 27447 commits to main since this release

⭐ New Features

  • Push the Java 5 simplifications in SimpleJdbcTemplate up to JdbcTemplate [SPR-6858] #11524
  • Documentation on Spring-Struts 1 integration needs to be updated [SPR-6855] #11521
  • add varags constructor for ClassPathXmlApplicationContext and FileSystemXmlApplicationContext [SPR-6849] #11515
  • HttpMessageConverter read and write methods have restrictive type annotations [SPR-6848] #11514
  • Improve documentation on "Instantiation using an instance factory method" [SPR-6846] #11512
  • factory-method - improve error message when method is not static [SPR-6837] #11503
  • Add setStripTrailingSlash to DefaultRequestToViewNameTranslator [SPR-6830] #11496
  • Allow SpEl expressions to be evaluated from JSPs [SPR-6827] #11493
  • Update PagedListHolder with generics [SPR-6825] #11491
  • @Transactional("transactionManager") and logging [SPR-6811] #11477
  • @Transactional("transactionManager") and error handling [SPR-6810] #11476
  • AbstractRoutingDataSource should only use defaultTargetDataSource on key null and should fail-fast on a non-existing key [SPR-6809] #11475
  • Hibernate cache SPI integration -> LocalRegionFactoryProxy does not implement Hibernate 3.5's getDefaultAccessType() [SPR-6805] #11471
  • form input tag disabled attribute only works for string input [SPR-6790] #11456
  • Use of non-existing JmsTemplate constructor in documentation's sample code [SPR-6789] #11455
  • The class MediaType has a natural ordering that is inconsistent with equals, which is generally recommended or should otherwise at least be indicated in the javadoc [SPR-6788] #11454
  • Improve message error when the MarshallingView modelKey attribute is not valid [SPR-6785] #11451
  • BeanNameAutoProxyCreator does not work if the given beanNames are ses [SPR-6774] #11440
  • HttpMessageConverter should accept Class<? extends T> on can read [SPR-6771] #11437
  • Need detailed log for start and stop Lifecycle beans [SPR-6769] #11435
  • LinkedMultiValueMap should implement Serializable [SPR-6765] #11431
  • ReflectiveMethodResolver should provide a MethodFilter strategy [SPR-6764] #11430
  • Enable more control of StandardEvaluationContext strategies [SPR-6763] #11429
  • Use "cyclic" instead of "recursive" in BeanDefinitionStoreException "Detected recursive loading of class path resource" [SPR-6755] #11421
  • A matched null "default converter" results in a confusing log message [SPR-6746] #11412
  • Could not autowire field of type org.springframework.web.context.request.WebRequest [SPR-6727] #11393
  • DataBinder setAutoGrowNestedPaths call should work reliably [SPR-6718] #11384
  • Spring 3.0 not compatible with Hibernate 3.5 beta3 [SPR-6705] #11371
  • It is necessary to add support UUID type in Spring MVC (WebDataBinder) [SPR-6696] #11362
  • SpringORM - Scoped proxies for EntityManager injected with @PersistenceContext [SPR-6684] #11350
  • Spring beans in singleton scope are ignoring default component-scan scoped-proxy configuration [SPR-6683] #11349
  • Spring AOP proxies with annotation based pointcuts are not serializable [SPR-6681] #11347
  • Spring beans annotated with @Transactional are not serializable [SPR-6680] #11346
  • Provide PersistenceAnnotationBeanPostProcessor without JNDI dependency. [SPR-6679] #11345
  • @Scheduled annotation should support property placeholder values [SPR-6670] #11336
  • Add support for @Scheduled as a meta-annotation [SPR-6669] #11335
  • Make comment prefix configurable in ResourceDatabasePopulator [SPR-6667] #11333
  • Allowing a flexible reference to JBoss Work Manager [SPR-6648] #11314
  • Make interface signature check optional in PersistenceExceptionTranslationInterceptor so it can translate all exceptions [SPR-6630] #11296
  • Have ConversionFailedException store/expose the failed value [SPR-6629] #11295
  • make private methods protected in DefaultLifecycleProcessor for extension [SPR-6617] #11283
  • Map SQL Error code 50200 in H2 to CannotAcquireLockException [SPR-6612] #11278
  • SpEL expression evaluation should rethrow (not wrap) RuntimeExceptions [SPR-6610] #11276
  • java.lang.Object should count as a simple property, at least from the autowiring perspective [SPR-6600] #11266
  • Make spring-aop required for spring-context (in spring-context POM) [SPR-6578] #11244
  • MarshallingView auto detect model with Jaxb2Marshaller chooses the wrong object [SPR-6577] #11243
  • MimeMailHelper mail address header fields are not encoded [SPR-6530] #11196
  • Allow ContentNegotiatingViewResolver to be strict ant return a 406 if no view found [SPR-6467] #11133
  • Add full support for JPA 2.0 PersistenceUnitInfo [SPR-6408] #11074
  • Property Placeholder does not work for "concurrency" attribute for the jms namespace [SPR-6232] #10900
  • TilesConfigurer does not support the new configuration model of Tiles 2.2 [SPR-6097] #10765
  • Support late detection of ApplicationListener interface in objects returned from @Bean methods [SPR-6060] #10728
  • Support Hessian 4.0.1 with Spring 3.0 [SPR-6041] #10710
  • Generic getObjectType on FactoryBean should not be generic [SPR-5982] #10650
  • Support Tiles 2.2 for Velocity and FreeMarker purposes [SPR-5609] #10280
  • Provide BeanDefinitionRegistryPostProcessor lifecycle hook [SPR-5595] #10266
  • Explain difference between and pros/cons of dependency injection vs dependency lookup [SPR-3786] #8466
  • Reference manual - mention JSR-250 lifecycle annotations alongside other lifecycle mechanisms [SPR-3773] #8453

🪲 Bug Fixes

  • org.springframework.web.servlet.tags.form.TagIdGenerator doesn't remove characters [] and double-quotes [SPR-5382] #10055
  • RestTemplate throws IllegalArgumentException when HTTP status is not in the HttpStatus enum [SPR-6752] #11418
  • TransactionSynchronizationUtils.unwrapResourceIfNecessary() does not unwrap OSGi service proxies [SPR-7368] #12026
  • The MANIFESTs are importing packages from Spring distribution using [3.0.0, 3.0.1) version range [SPR-6868] #11534
  • UriTemplate.expand() fails when value contains $ [SPR-6854] #11520
  • Latest snapshot does not work with Tiles2 due to EL error [SPR-6852] #11518
  • AbstractInterceptorDrivenBeanDefinitionDecorator NPE for bean definitions without direct class attribute [SPR-6842] #11508
  • form:checkbox tag creates invalid HTML id when bound to indexed property [SPR-6840] #11506
  • Unnecessary conversion to typed Map resulted in injection error (worked in 2.5.X) [SPR-6808] #11474
  • ConversionService fails with CustomEditorConfigurer [SPR-6807] #11473
  • Hibernate cache SPI integration -> LocalRegionFactoryProxy needs a LocalRegionFactoryProxy(Properties) constructor [SPR-6804] #11470
  • Problem with initialization of ConversionService and custom converters [SPR-6800] #11466
  • When form:select binds a collection, the formatter are not used. [SPR-6799] #11465
  • ResourceScriptSource uses platform default charset (getScriptAsString) [SPR-6794] #11460
  • Race condition between AbstractApplicationContext.close() and Spring's shutdownHook [SPR-6793] #11459
  • @RequestParam, @CookieValue and @RequestHeader default-value and required are not in sync [SPR-6791] #11457
  • The method org.springframework.http.MediaType.parseMediaType does not always throw IllegalArgumentException as the documentantion claims [SPR-6786] #11452
  • Dealing with multiple persistence units - Documentation Corrections [SPR-6781] #11447
  • imported @Configuration classes do not get enhanced and fail to satisfy scoping requirements [SPR-6779] #11445
  • significant memory consumption in 3.0 vs 2.x [SPR-6775] #11441
  • JavaDoc example usage is incorrect for CronSequenceGenerator [SPR-6772] #11438
  • Does not catch exception during stopping Lifecycle bean can cause resource leak [SPR-6770] #11436
  • Typo in documentation: 25.4.3 The 'scheduled-tasks' element [SPR-6766] #11432
  • SpEL evaluation for MethodReference causes multiple invocations when an Exception is thrown [SPR-6760] #11426
  • Jetty 7 doesn't like ShallowEtagHeaderFilter [SPR-6759] #11425
  • Documentation issue: spring-tomcat-weaver.jar and spring-instrument-tomcat.jar mentioned in reference documentation but don't exist [SPR-6753] #11419
  • Typo in "Pooling target sources" paragraph of reference manual [SPR-6748] #11414
  • SpEL does not expose field-level annotations when setting bean properties [SPR-6745] #11411
  • FormattingConversionServiceFactoryBean.setConverters declares Set ParameterizedType restricting programmatic usage [SPR-6742] #11408
  • (maven) dependency on spring-tx is declared optional, but JmsTempate does import some org.springframework.transaction. [SPR-6737] #11403
  • Spring 3.0 ORM with JPA 2.0 TypedQuery ClassCastException [SPR-6733] #11399
  • Snapshot Builds: Inconsistency in publishing betweeen EBR and Maven-Central compatible repository [SPR-6732] #11398
  • EntityManager won't get closed when using SharedEntityManagerBean [SPR-6726] #11392
  • reference doc, section 8.7 - ProxyFactory (AdvisedSupport) does not contain method addInterceptor [SPR-6725] #11391
  • reference doc, section 8.5.2 - aopProxyFactory is not part of ProxyConfig [SPR-6723] #11389
  • ConstructorResolver ignores exceptions when autowiring multiple constructors [SPR-6720] #11386
  • Wrong information on single quote escaping in chapter 6.5.1 in reference documentation [SPR-6715] #11381
  • Wrong method signature of GenericConverter interface in chapter 5.5.3 [SPR-6713] #11379
  • restore request attributes after include [SPR-6712] #11378
  • persistence_2_0.xsd not supported [SPR-6711] #11377
  • Annotation-driven formatting does not work when BindTag's path contains a reference to an array/list element [SPR-6710] #11376
  • NPE in InitDestroyAnnotationBeanPostProcessor [SPR-6700] #11366
  • IBM WebSphere transactions not rolling back [SPR-6695] #11361
  • Generic return type on FactoryBean.getObjectType causes problems [SPR-6692] #11358
  • Broken link to "Method Injection" blog entry in spring reference manual [SPR-6691] #11357
  • Reference docs, some sample strings unclosed [SPR-6687] #11353
  • @ResponseBody throws HttpMediaTypeNotAcceptableException if client accepts "/" [SPR-6686] #11352
  • Wrong version in POMs (should be 3.0.1 now) [SPR-6678] #11344
  • MapToMapConverter cannot handle unbounded wildcard Value type [SPR-6676] #11342
  • Small Connection leak in DataSourceInitializer [SPR-6668] #11334
  • CronTrigger/CronSequenceGenerator fails to handle daylight saving timezone changes [SPR-6666] #11332
  • ScheduledAnnotationBeanPostProcessor registers schedules twice in web application [SPR-6656] #11322
  • When using interfaces on controllers, @SessionAttributes doesn't work [SPR-6655] #11321
  • PropertyPlaceholderConfigurer has Inconsistent Behavior between 2.5.6 and 3.0.0 [SPR-6654] #11320
  • Bug in SpEL documentation [SPR-6652] #11318
  • Request mapping incorrectly receiving all dispatches for a controller [SPR-6649] #11315
  • PropertyPlaceholder does not work for @ImportResource in JavaConfig [SPR-6645] #11311
  • The 'id' value from an 'executor' element in the task namespace should be used as the thread name prefix [SPR-6644] #11310
  • PathVariable does not work properly after updated to 3.0 GA [SPR-6640] #11306
  • Error in JavaConfig sample code - Paragraph 3.11.2.2 Building the container programmatically [SPR-6638] #11304
  • Error in JavaConfig sample code [SPR-6637] #11303
  • TransactionSynchronizationUtils.unwrapResourceIfNecessary() overwrites InfrastructureProxy.getWrappedObject() results [SPR-6625] #11291
  • AbstractApplicationEventMulticaster.removeApplicationListener does not consider retrieverCache [SPR-6624] #11290
  • WebUtils tries to set internal attributes [SPR-6623] #11289
  • An error in documentation [SPR-6619] #11285
  • Cannot override bean in Spring 3 JavaConfig [SPR-6618] #11284
  • @Value does not work with AnnotationConfigApplicationContext [SPR-6611] #11277
  • Tiles 2 and Spring MVC 3RC3 : java.lang.ClassCastException: org.apache.tiles.web.util.ServletContextAdapter [SPR-6606] #11272
  • Calls to FactoryBean @Bean methods cause ClassCastException [SPR-6602] #11268
  • @RequestMapping no longer seems to support multiple directory matching (**/) [SPR-6598] #11264
  • Parameterized ApplicationListener does not work with AOP proxies [SPR-6596] #11262
  • context:component-scan broken for Eclipse/Equinox after upgrade to Spring 3.0 [SPR-6592] #11258
  • onApplicationEvent called twice for ApplicationListener implemented in lang:bsh/lang:inline-script [SPR-6589] #11255
  • applicationContext.getBeansWithAnnotation(Foo) does not work if you have any factory beans that are not singleton [SPR-6579] #11245
  • MBeanClientInterceptor doesn't handle arrays of CompositeData [SPR-6548] #11214
  • form:checkboxes doesn't use spring 3 converters for items comparison [SPR-6505] #11171
  • AnnotationConfigApplicationContext does not detect BeanFactoryPostProcessor [SPR-6455] #11121
  • Transaction management fails when using AspectJ and load-time weaving [SPR-6392] #11058
  • JAX-WS intergation via SpringBeanAutowiringSupport doesn't work in Weblogic 10.3 [SPR-5652] #10323
  • TransactionAwareInvocationHandler#toString is not returning generated string [SPR-5582] #10253
  • 📔 Documentation

    • Remove remaining reference to StandardScopes from the reference manual [SPR-6821] #11487
    • mvc:annotation-driven not documented [SPR-6767] #11433
    • Spring docs state inaccurately that Spring MVC tutorial ships in distribution [SPR-6757] #11423
    • Section 8.2.4.1 Static pointcuts still contains reference to Perl5RegexpMethodPointcut [SPR-6721] #11387
    • Missing around two annotations [SPR-6659] #11325
    • Typo in the Spring reference documentation (chapter 9. Testing) [SPR-6658] #11324
    • Typo in the MVC documentation [SPR-6657] #11323
    • The Reference Documentation 2.5.6 states that the AbstractController.handleRequest() method is final [SPR-6646] #11312
    • Document configuring and exposing a ValidatorFactory not just a Validator [SPR-6609] #11275
    • The reference document has wrong terminology that is 'static inner class'. [SPR-6608] #11274
    • Reference manual - create table summarizing *Aware interfaces [SPR-3771] #8452
    • Doc: Update ComponentBeanDefinitionParser example to work with nested child Components [SPR-3709] #8390
    • Some documentation issues (Spring reference) [SPR-3673] #8354
    • document logging [SPR-2282] #6971
    • Doc: Hibernate3 OpenSessionInView and getCurrentSession() example [SPR-1625] #6322