org.springframework.web.servlet.config
Class AnnotationDrivenBeanDefinitionParser

java.lang.Object
  extended by org.springframework.web.servlet.config.AnnotationDrivenBeanDefinitionParser
All Implemented Interfaces:
BeanDefinitionParser

 class AnnotationDrivenBeanDefinitionParser
extends java.lang.Object
implements BeanDefinitionParser

BeanDefinitionParser that parses the annotation-driven element to configure a Spring MVC web application.

Responsible for:

  1. Registering a DefaultAnnotationHandlerMapping bean for mapping HTTP Servlet Requests to @Controller methods using @RequestMapping annotations.
  2. Registering a AnnotationMethodHandlerAdapter bean for invoking annotated @Controller methods. Will configure the HandlerAdapter's webBindingInitializer property for centrally configuring @Controller DataBinder instances:

Since:
3.0
Author:
Keith Donald, Juergen Hoeller, Arjen Poutsma

Field Summary
private static boolean jacksonPresent
           
private static boolean jaxb2Present
           
private static boolean jsr303Present
           
private static boolean romePresent
           
 
Constructor Summary
AnnotationDrivenBeanDefinitionParser()
           
 
Method Summary
private  RootBeanDefinition createConverterBeanDefinition(java.lang.Class<? extends HttpMessageConverter> converterClass, java.lang.Object source)
           
private  RuntimeBeanReference getConversionService(org.w3c.dom.Element element, java.lang.Object source, ParserContext parserContext)
           
private  ManagedList<RootBeanDefinition> getMessageConverters(java.lang.Object source)
           
private  RuntimeBeanReference getValidator(org.w3c.dom.Element element, java.lang.Object source, ParserContext parserContext)
           
 BeanDefinition parse(org.w3c.dom.Element element, ParserContext parserContext)
          Parse the specified Element and register the resulting BeanDefinition(s) with the ParserContext.getRegistry() BeanDefinitionRegistry} embedded in the supplied ParserContext.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

jsr303Present

private static final boolean jsr303Present

jaxb2Present

private static final boolean jaxb2Present

jacksonPresent

private static final boolean jacksonPresent

romePresent

private static boolean romePresent
Constructor Detail

AnnotationDrivenBeanDefinitionParser

AnnotationDrivenBeanDefinitionParser()
Method Detail

parse

public BeanDefinition parse(org.w3c.dom.Element element,
                            ParserContext parserContext)
Description copied from interface: BeanDefinitionParser
Parse the specified Element and register the resulting BeanDefinition(s) with the ParserContext.getRegistry() BeanDefinitionRegistry} embedded in the supplied ParserContext.

Implementations must return the primary BeanDefinition that results from the parse if they will ever be used in a nested fashion (for example as an inner tag in a <property/> tag). Implementations may return null if they will not be used in a nested fashion.

Specified by:
parse in interface BeanDefinitionParser
Parameters:
element - the element that is to be parsed into one or more BeanDefinitions
parserContext - the object encapsulating the current state of the parsing process; provides access to a BeanDefinitionRegistry
Returns:
the primary BeanDefinition

getConversionService

private RuntimeBeanReference getConversionService(org.w3c.dom.Element element,
                                                  java.lang.Object source,
                                                  ParserContext parserContext)

getValidator

private RuntimeBeanReference getValidator(org.w3c.dom.Element element,
                                          java.lang.Object source,
                                          ParserContext parserContext)

getMessageConverters

private ManagedList<RootBeanDefinition> getMessageConverters(java.lang.Object source)

createConverterBeanDefinition

private RootBeanDefinition createConverterBeanDefinition(java.lang.Class<? extends HttpMessageConverter> converterClass,
                                                         java.lang.Object source)