github spring-projects/spring-framework v3.0.0.M3
3.0 M3 Release

latest releases: v6.2.0, v6.1.15, v6.2.0-RC3...
5 years ago

⭐ New Features

  • Add value alias for @ContextConfiguration's locations attribute [SPR-5713] #10383
  • Subclasses of SpringJUnit4ClassRunner should be able to configure the default ContextLoader class [SPR-5710] #10380
  • Request header filtering in @RequestMapping [SPR-5690] #10360
  • Expose model object in RequestContext with public getter [SPR-5686] #10356
  • improve thread-safety for entity/namespace resolvers [SPR-5679] #10350
  • Allow EclipseLink 2.0.0.M1 in Spring-ORM [SPR-5676] #10347
  • mergePropertiesIntoMap only works with String [SPR-5669] #10340
  • avoid synchronization when AspectJExpressionPointcut.getShadowMatch hits cache [SPR-5668] #10339
  • Request: lazy-init or 'only-if-needed' option for stereotype @Component source-annotated component-scan definitions [SPR-5662] #10333
  • @Property annotation to "autowire" properties [SPR-5659] #10330
  • Support placeholders in @Resource annotation configurations [SPR-5656] #10327
  • Mismatch between Javadoc and method signture BeanWrapper.getPropertyDescriptor(String) - throws clause [SPR-5650] #10321
  • Support use of @Qualifier in conjunction with @Bean methods [SPR-5643] #10314
  • portlet global session ignored by by JSF request wrapper [SPR-5637] #10308
  • @RequestMapping matching should be insensitive to trailing slashes [SPR-5636] #10307
  • OXM does not permit targetClass and mapping file for CastorMarshaller [SPR-5634] #10305
  • Implicit /** mapping on type-level @RequestMapping [SPR-5631] #10302
  • Extend Multiple @PathVariable Selection to allow delimeters other than / [SPR-5630] #10301
  • Support use of @Primary and @Lazy during component-scanning [SPR-5629] #10300
  • Allow for exceptions to be annotated with a @ResponseStatus annotation [SPR-5625] #10296
  • A default HandlerExceptionResolver that resolves standard Spring exceptions [SPR-5624] #10295
  • Set Content-Type response header for Hessian services [SPR-5621] #10292
  • spring:url tag should use htmlEscape instead of escapeXml for entity encoding [SPR-5605] #10276
  • Eager validation for missing destroy methods [SPR-5602] #10273
  • Make naming of @Configuration class processing-related artifacts consistent [SPR-5600] #10271
  • Hook @Configuration class processing into context:component-scan/ and context:annotation-config/ through AnnotationConfigUtils#registerAnnotationConfigProcessors [SPR-5599] #10270
  • Improve support for @Aspect-annotated @Configuration classes by relaxing constraints in AbstractAspectJAdvisorFactory#isAspect() [SPR-5598] #10269
  • Consolidate @ScopedProxy -> @Scope [SPR-5594] #10265
  • Provide @Lazy annotation [SPR-5591] #10262
  • Provide @Primary annotation [SPR-5590] #10261
  • BeanPropertyRowMapper should default primitive property when receiving null value from result [SPR-5588] #10259
  • Change MapSqlParameterSource to SqlParameterSource in executeFunction and executeObject methods [SPR-5570] #10241
  • metadata clients cannot identify the source of a value type [SPR-5562] #10233
  • xml value-type hard to determine for list/set or maps from the metadata [SPR-5556] #10227
  • ConstructorArgumentValues returns collections with different order [SPR-5554] #10225
  • Support @Scope(proxyMode) during component-scanning/autowiring lifecycle [SPR-5550] #10221
  • Revise beans XSD for 3.0 [SPR-5549] #10220
  • add support for arrays inside the xml configuration ( element) [SPR-5543] #10214
  • Add XML HttpMessageConverters [SPR-5539] #10210
  • Add unregisterManagedResource to MBeanExportOperations interface [SPR-5517] #10188
  • Support Hessian 3.2.1 [SPR-5469] #10142
  • XStreamMarshaller.setImplicitCollection(Map) is insufficient [SPR-5449] #10086
  • Ordering of ServletContextAware and ApplicationContextAware callbacks makes testing FreeMarkerView (and similar classes) impossible [SPR-5398] #10071
  • Scanned components don't have the ability of being "primary" candidates [SPR-5155] #9828
  • Use field or parameter name as default value for @Qualifier [SPR-5152] #9825
  • Spring TestContext Framework not compatible with JUnit 4.5 [SPR-5145] #9818
  • Add DuplicateKeyException to DAO exception hierachy [SPR-5125] #9798
  • AnnotationUtils.findAnnotation() should look for annotations on annotations [SPR-5085] #9758
  • FreeMarkerView should support AllHttpScopesHashModel (analogous to FreeMarkerServlet in FreeMarker 2.3.14) [SPR-4962] #9637
  • Adding hook into SQL State based exception translation [SPR-4899] #9575
  • [Performance] CachedIntrospectionResults has wrong approach to caching. [SPR-4876] #9552
  • AnnotationMethodHandlerAdapter should treat String return type with @ModelAttribute as model attribute instead of view name [SPR-4867] #9543
  • Allow annotated methods on a Controller to be marked as exception handlers [SPR-4677] #9354
  • @RequestMapping methods returning null have an implicit ModelAndView created [SPR-4518] #9195
  • When using request mappings at the type-level like /hotels/*, it should be possible to define a controller handler method for the root like /hotels [SPR-4494] #9172
  • @Autowired dependencies and external configuration [SPR-4447] #9125
  • Comprehensive REST Support [SPR-4419] #9097
  • org.springframework.jdbc.object.StoredProcedure is an abstract class, although it may be allowed to be used as a concrete class after the jira change SPR-3898 [SPR-3987] #8667
  • Provide a concrete implementation of MappingSqlQuery (say RowMappingSqlQuery) which can be injected a RowMapper, so that we can put it in a config file [SPR-3986] #8666
  • Enable custom default value for @Transactional's rollbackFor argument [SPR-3027] #7713
  • Subclass DataIntegrityViolationException to represent main constraint types and translate SQL exceptons into appropriate subclass [SPR-2977] #7663

🪲 Bug Fixes

  • AopUtils.getTargetClass assumes cglib proxies are always proxying classes [SPR-5694] #10364
  • ConfigurationClassPostProcessor.isConfigurationClassBeanDefinition() makes classloading assumptions that don't hold true in an OSGi environment [SPR-5693] #10363
  • SPR-5668 introduced occasional ConcurrentModificationException in callees of AspectJExpressionPointcut.getShadowMatch() [SPR-5687] #10357
  • template.mf contains invalid range for org.hibernate.ejb [SPR-5685] #10346
  • Spring 3 library omits org.springframework.expression [SPR-5675] #10345
  • SPEL: Projections don't work within templates (ParseException) [SPR-5673] #10344
  • SPEL: Inconsistent implementation of ReflectivePropertyResolver - canRead vs. read for null targets [SPR-5663] #10334
  • SPEL: NullPointerException when passing null values as parameters to method calls [SPR-5661] #10332
  • Race condition in AutowiredAnnotationBeanPostProcessor.AutowiredMethodElement.inject()? [SPR-5658] #10329
  • RestTemplate handles redirects incorrectly [SPR-5653] #10324
  • Incorrect .classpath file for org.springframework.context [SPR-5645] #10316
  • ASM bundle contains an import package for org.objectweb.asm [SPR-5618] #10289
  • Optional Ivy dependencies are mandatory in the OXM bundle's manifest [SPR-5617] #10288
  • Spring library does not include the ASM and OXM bundles [SPR-5616] #10287
  • Regression: InterfaceBasedMBeanInfoAssembler setManagedInterfaces fails if interfaces are passed in [SPR-5615] #10286
  • NPE in AbstractCachingLabeledEnumResolver.getLabeledEnumByLabel following garbage collection [SPR-5577] #10248
  • typo in RestTemplate javadoc [SPR-5571] #10243
  • ASM based SimpleMetadataReader returns also annotations on members [SPR-5545] #10216
  • ReSTful URLs with content type extension do not work properly [SPR-5537] #10208
  • RestTemplate does not do HTTP GET if it should [SPR-5536] #10207
  • PermGen leak in GenericTypeResolver's typeVariableCache [SPR-5462] #10135
  • All maven2 artifactIds change (will break a lot of builds for maven users) [SPR-5385] #10058
  • Race-Condition in RMIServiceExporter [SPR-5263] #9893

Don't miss a new spring-framework release

NewReleases is sending notifications on new releases.