Skip to content

3.0 RC2 Release

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

⭐ New Features

  • PathMatchingResourcePatternResolver inconsistently throws IOException in case of non-existing resources [SPR-7365] #12023
  • Setting validationMode to NONE in org.springframework.beans.factory.xml.XmlBeanDefinitionReader disables namespace support [SPR-6336] #11002
  • Introduce portable NumberFormat annotation [SPR-6331] #10997
  • Rename @ImportXml -> @ImportResource and allow for usage of non-XML BeanDefinitionReader types [SPR-6328] #10994
  • Introduce portable @DateTimeFormat annotation [SPR-6313] #10979
  • Tiles 2.1 support in Spring 3.0 is not compatible with Tomcat 5.5 [SPR-6309] #10975
  • Spring Expression Language creates systemProperties bean calling System.getProperties() which in enterprise shared containers is locked down [SPR-6308] #10974
  • Quartz scheduler should not start until context is refreshed [SPR-6307] #10973
  • Add mvc namespace for simplifying setup of Spring MVC [SPR-6306] #10972
  • Wrapped Hibernate SQLGrammarException loses the potential SQL statement that caused the exception [SPR-6304] #10970
  • Add more logging to RestTemplate [SPR-6303] #10969
  • Support @RequestHeader on HttpHeaders parameters [SPR-6301] #10967
  • AbstractExcelView doesn't work with POI 3.5 [SPR-6298] #10964
  • CompositeStringExpression doesn't use the ConversionService [SPR-6278] #10945
  • Spring Aspects to provide DataAccessException translation for direct EntityManager usage [SPR-6275] #10942
  • Spring Aspects to provide basic static mock test functionality [SPR-6274] #10941
  • Consider introducing Printer/Parser specializations of Formatter [SPR-6272] #10939
  • Register converters for util.Date/util.Calendar as well as Joda DateTime types in DefaultConversionService [SPR-6271] #10938
  • Upgrade to new version of javax.el [SPR-6265] #10933
  • Add namespace support for ErrorHandler on MessageListener containers [SPR-6240] #10908
  • Reintroduce Struts support [SPR-6236] #10904
  • Add facility to EhCacheFactorybean for registering event listeners [SPR-6234] #10902
  • [spel] performance for property access is less than ideal [SPR-6230] #10898
  • Let StringArrayPropertyEditor trim resulting array values [SPR-6195] #10863
  • MockServletContext hardcoded to return 2.5 for servlet version [SPR-6194] #10862
  • Use var-args instead of String[] to set allowed, disallowed, and required fields in DataBinder [SPR-6174] #10842
  • Support @ImportResource within @Configuration classes [SPR-6158] #10826
  • Update the documentation to include the advice of using within() together with lone kinded pointcuts [SPR-6123] #10791
  • Expose setter for ConversionService to be set in a DataBinder, or publicly available property [SPR-6108] #10776
  • FrameworkServlet does not need parent to be WebApplicationContext [SPR-6102] #10770
  • Add support for JodaTime for new UI formatting API [SPR-6085] #10753
  • Convention-based formatting/parsing methods for simple objects [SPR-6074] #10742
  • Improve method naming in MethodParameter class [SPR-6055] #10724
  • Add support for arrays in EL Selections and Projections [SPR-6051] #10720
  • ApplicationListener callbacks to be supported for inner beans as well [SPR-6049] #10718
  • [JPA] [EclipseLink] - Spring filters various packages in JPA temp class loader, prevent weaving of any models in these packages [SPR-6040] #10709
  • HSQLDB+Quarz using data source causes "Unexpected token: FOR in statement " exception [SPR-6038] #10707
  • Data Binder: Auto-grow collections as needed to support nested property binding [SPR-6033] #10702
  • Data Binder: Add support for auto-instantiating null values in nested paths [SPR-6032] #10701
  • Overriding DocumentDefaultsDefinitions retrieval from root element attributes [SPR-6010] #10678
  • Load-Time Weaving does not work in JBoss AS 5 [SPR-5764] #10434
  • Provide dedicated ApplicationContext implementations for use with (JavaConfig) @Configuration classes [SPR-5682] #10353
  • Support BeanFactory#getBean(Class requiredType) [SPR-5529] #10200
  • Spring expression: please provide additional convenience operators for comparisons [SPR-5518] #10189
  • Spring MVC views.properties uses xl.(class) syntax [SPR-5430] #10104
  • Spring inconsistently resolves an overloaded setter method [SPR-4931] #9606
  • Add name attribute to XML namespaces that want to support it (through parser base class) [SPR-4783] #9460
  • AbstractJmsListeningContainer should provide an easy way to start the container after the ApplicationContext has been fully initialized [SPR-4716] #9393
  • Improve context-property-placeholder configurablity [SPR-4661] #9338
  • ArgPreparedStatementSetter: extract setValue(ps, position, value) [SPR-3978] #8658
  • extract JdbcTemplate.newArgPreparedStatementSetter(args) [SPR-3977] #8657
  • Make it easier to disallow bean definition overriding [SPR-3734] #8415
  • scope (& similar attributes) on abstract beans should be inherited in child beans, or not permitted [SPR-3542] #8225
  • Thread safe date format/parse API [SPR-2300] #6989
  • Circular dependence forbidding cannot be easily configured. [SPR-2048] #6741

🪲 Bug Fixes

  • Multiple constructor-arg with same index=0 withing the same bean element does not throw exception [SPR-6329] #10995
  • Regression: ResourceEditor in 3.0 does not ignore unresolvable placeholders, but it did in 2.5.6 [SPR-6321] #10987
  • ModelAndViewAssert.assertViewName() is not nullsafe [SPR-6300] #10966
  • Spring:url tag should not use application/x-www-form-urlencoded encoding [SPR-6296] #10962
  • Documentation Inconsistency - Required version of Tiles [SPR-6293] #10959
  • RequestContextListener initializes Log4J ahead of call to Log4jConfigListener [SPR-6288] #10955
  • getenv.* : Access denied (java.lang.RuntimePermission getenv.*) [SPR-6287] #10954
  • scope of javax.servlet in portlet pom is compile instead of provided [SPR-6284] #10951
  • CookieGenerator.DEFAULT_COOKIE_MAX_AGE is no longer available. Not backwards compatible [SPR-6276] #10943
  • CronSequenceGenerator wrong trigger time on rollover when lower order bits specified [SPR-6273] #10940
  • SimpleJdbcInsert.executeAndReturnKey Fails for HSQLDB version 1.9.0 [SPR-6266] #10934
  • PropertyPlaceholderConfigurer xml configuration example error in pdf reference [SPR-6257] #10925
  • Accept header should not be mandatory for properly handling response body. [SPR-6248] #10916
  • Multipart Content-Type charset is ignored in CommonsFileUploadSupport. [SPR-6247] #10915
  • Velocity MethodInvocationExceptions not properly reported [SPR-6246] #10914
  • org.springframework.expression.ParseException loses position & Throwable information [SPR-6239] #10907
  • correct reference documentation for ResourceBundleViewResolver [SPR-6224] #10892
  • MVC Code example error in Chapter 15.3 [SPR-6217] #10885
  • Using @ResponseBody throws HttpMediaTypeNotAcceptableException when it supports writing an acceptable MediaType [SPR-6214] #10882
  • DisposableBeanAdapter throws NPE for default-destroy-method [SPR-6211] #10879
  • When looking up methods with @RequestMapping annotation, unannotated bridge methods are included [SPR-6206] #10874
  • GenericFormatterRegistry: unable to use custom ConversionService [SPR-6200] #10868
  • GenericFormatterRegistry: unable to register formatters for primitive types [SPR-6199] #10867
  • NPE in GenericConversionService.findConverterByClassPair(Class, Class) [SPR-6197] #10865
  • GenericConversionService: unable to autowire list types [SPR-6196] #10864
  • Binding Enum values to beans broken in Spring 3 RC1 [SPR-6190] #10858
  • UriTemplate: Insufficient handling of characters that need to be escaped. [SPR-6188] #10856
  • integration-tests should not be included in the packaged distribution [SPR-6183] #10851
  • GenericConversionService converts to null when targetType is a primitive resulting in binding error [SPR-6179] #10847
  • HttpHeadersTests fails with non-english locale [SPR-6177] #10845
  • "Registering field-specific Formatters" section is not in sync with the codebase [SPR-6171] #10839
  • CronSequenceGenerator bug scheduling next date when using day of week [SPR-6170] #10838
  • WebSphereUowTransactionManager doesn't suspend synchronizations correctly [SPR-6167] #10835
  • Using ignoreAcceptHeader and defaultContentType together causes problems. [SPR-6163] #10831
  • Task namespace usage should not require concurrent backport JARs [SPR-6161] #10829
  • XFire 1.2.6 not compatible with Spring 3.0's CustomEditorConfigurer [SPR-6157] #10825
  • ControllerClassNameHandlerMapping's bug [SPR-6153] #10821
  • BeanPostProcessor callbacks don't work as expected for @PostConstruct annotated methods [SPR-6066] #10734
  • SPEL: Null-safeness of boolean operators [SPR-6059] #10727
  • org.springframework.beans.propertyeditors.URIEditor does double escaping for % signes for URIs that contain a schema [SPR-6005] #10673
  • StatementCreatorUtils.setNull throws exception in Derby Client driver [SPR-6000] #10668
  • CustomEditorConfigurer functionality regression in 3.0 [SPR-5971] #10639
  • Confusing/wrong error message when @Autowire fails using the wrong @Qualifier [SPR-5912] #10581
  • Regression: AnnotationMetadataReadingVisitor doesn't consider annotation method returning classes (SPR-5477) [SPR-5827] #10497
  • TransactionAwareDataSourceProxy leaks connections [SPR-5780] #10450
  • CustomEditorConfigurer compatibility breakage in 3.0 [SPR-5773] #10443
  • XML bean definition "import" directive doesn't work with custom resource loader [SPR-5762] #10432
  • TransactionSynchronizationUtils.unwrapResourceIfNecessary() does not unwrap scoped SessionFactory [SPR-5671] #10342

📔 Documentation

  • Add coverage of JSON support to reference guide [SPR-6340] #11006
  • Typo in section 3.3.1.1 (Aliasing a bean outside the bean definition) of the reference manual [SPR-6220] #10888
  • Typo in section 2.5.2 (Spring Expression Language) of the reference manual [SPR-6219] #10887
  • support for multiple transaction managers with @Transactional / tx:annotation-driven needs to be documented [SPR-6205] #10873
  • API docs advertise JPA methods that never materialized [SPR-6160] #10828
  • Add documentation to Spring MVC/JSP/JSTL integration regarding webapp versions [SPR-3695] #8376
  • Create single page version of the Spring Reference Documentation and punt it onto the main Spring website. [SPR-3584] #8266