title: java.lang.ClassNotFoundException: org.springframework.core.convert.support.PropertyTypeDescriptor
body: <p>When I am trying to start the application it throws an exception shown in stack trace. 
  I'm using:</p>
  
  <ul>
  <li>spring version 3.2.4.RELEASE</li>
  <li>spring Transaction version 3.2.4.RELEASE</li>
  <li>spring.security.version 3.0.5.RELEASE</li>
  <li>hibernate.version 4.2.1.Final</li>
  <li>JPA 1.0</li>
  </ul>
  
  <p>I knew that <code>PropertyTypeDescriptor</code> is removed from spring. But I dont know how to handle this I'm stuck in this from last 2 days. Please suggest.</p>
  
  <h2>Stacktrace:</h2>
  
  <pre><code> 2013-11-19 22:25:17 ERROR TestContextManager:324 - Caught exception
   while allowing TestExecutionListener
   [org.springframework.test.context.support.DependencyInjectionTestExecutionListener@109cdd5]
   to prepare test instance
   [test.clickbuff.controller.TestUserController@893f08]
   java.lang.IllegalStateException: Failed to load ApplicationContext     at
   org.springframework.test.context.TestContext.getApplicationContext(TestContext.java:308)
      at
   org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:109)
      at
   org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:75)
      at
   org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:321)
      at
   org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:220)   at
   org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:301)
      at
   org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
      at
   org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:303)
      at
   org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:240)
      at
   org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
      at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)  at
   org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)    at
   org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)  at
   org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)    at
   org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)   at
   org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
      at
   org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
      at org.junit.runners.ParentRunner.run(ParentRunner.java:309)    at
   org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:180)
      at
   org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
      at
   org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
      at
   org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
      at
   org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
      at
   org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
      at
   org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
   Caused by: org.springframework.beans.factory.BeanCreationException:
   Error creating bean with name
   'org.springframework.context.annotation.internalConfigurationAnnotationProcessor':
   Instantiation of bean failed; nested exception is
   java.lang.NoClassDefFoundError:
   org/springframework/core/convert/support/PropertyTypeDescriptor    at
   org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:965)
      at
   org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:911)
      at
   org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)
      at
   org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
      at
   org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
      at
   org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
      at
   org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
      at
   org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
      at
   org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:398)
      at
   org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:594)
      at
   org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:407)
      at
   org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:84)
      at
   org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:1)
      at
   org.springframework.test.context.TestContext.loadApplicationContext(TestContext.java:280)
      at
   org.springframework.test.context.TestContext.getApplicationContext(TestContext.java:304)
      ... 24 more Caused by: java.lang.NoClassDefFoundError:
   org/springframework/core/convert/support/PropertyTypeDescriptor    at
   org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:960)
      ... 38 more Caused by: java.lang.ClassNotFoundException:
   org.springframework.core.convert.support.PropertyTypeDescriptor    at
   java.net.URLClassLoader$1.run(URLClassLoader.java:366)     at
   java.net.URLClassLoader$1.run(URLClassLoader.java:355)     at
   java.security.AccessController.doPrivileged(Native Method)     at
   java.net.URLClassLoader.findClass(URLClassLoader.java:354)     at
   java.lang.ClassLoader.loadClass(ClassLoader.java:423)  at
   sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)  at
   java.lang.
  
  ClassLoader.loadClass(ClassLoader.java:356)     ... 39 more
  </code></pre>
  
  <h2>Application context:</h2>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
  
  &lt;beans xmlns="http://www.springframework.org/schema/beans"
      xmlns:task="http://www.springframework.org/schema/task" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context"
      xmlns:tx="http://www.springframework.org/schema/tx"
      xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd
          http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
          http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd  http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd
          http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd"&gt;
  
      &lt;import resource="application-config.xml" /&gt;
      &lt;import resource="spring-database.xml" /&gt;
      &lt;import resource="Spring-Mail.xml" /&gt;
      &lt;import resource="spring-security.xml" /&gt;
  
  
      &lt;!--Setting Context Annotation Driven --&gt;
      &lt;context:annotation-config /&gt;
  
  
      &lt;!-- Controller's Base package --&gt;
      &lt;context:component-scan base-package="training.impetus.tp" /&gt;
  
  
      &lt;!-- Scheduler Annotation Driven --&gt;
      &lt;task:annotation-driven /&gt;
  
  
      &lt;!-- Spring MVC Annotation Driven --&gt;
      &lt;mvc:annotation-driven /&gt;
  
  
      &lt;!-- Transaction Annotation Driven --&gt;
      &lt;tx:annotation-driven transaction-manager="transactionManager" /&gt;
  
  
      &lt;!-- Resource mapping for static resources --&gt;
      &lt;mvc:resources mapping="/resources/**" location="/static/" /&gt;
  
  
      &lt;!-- File upload Bean --&gt;
      &lt;bean id="multipartResolver"
          class="org.springframework.web.multipart.commons.CommonsMultipartResolver" /&gt;
  
  
      &lt;!-- Transaction Manager --&gt;
      &lt;bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager"&gt;
          &lt;property name="dataSource" ref="dataSource" /&gt;
          &lt;property name="entityManagerFactory" ref="entityManagerFactory" /&gt;
      &lt;/bean&gt;
  
  
      &lt;!-- Assigning jobs to scheduler --&gt;
      &lt;bean id="schedulerJob" class="training.impetus.tp.scheduler.MailServiceJob"&gt;&lt;/bean&gt;
  
  
      &lt;!-- processes PersistenceUnit and PersistenceContext annotations --&gt;
      &lt;bean
          class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" /&gt;
  
  
      &lt;!-- View Mapping to MVC --&gt;
      &lt;bean
          class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt;
          &lt;property name="prefix" value="/WEB-INF/view/" /&gt;
          &lt;property name="suffix" value=".jsp" /&gt;
      &lt;/bean&gt;
  
  
      &lt;!-- Exceptions Mapping to MVC --&gt;
      &lt;bean
          class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver"&gt;
          &lt;property name="exceptionMappings"&gt;
              &lt;props&gt;
                  &lt;prop key="com.javabeat.ExampleException"&gt;
                      ExceptionPage
                  &lt;/prop&gt;
              &lt;/props&gt;
          &lt;/property&gt;
          &lt;property name="defaultErrorView" value="error" /&gt;
      &lt;/bean&gt;
  
  
      &lt;!-- Message Resources --&gt;
      &lt;bean id="messageSource"
          class="org.springframework.context.support.ResourceBundleMessageSource"&gt;
          &lt;property name="basenames"&gt;
              &lt;list&gt;
                  &lt;value&gt;mymessages&lt;/value&gt;
              &lt;/list&gt;
          &lt;/property&gt;
      &lt;/bean&gt;
  
      &lt;bean id="payCheckThread" class="training.impetus.tp.scheduler.PayCheckThread" scope="prototype"&gt;&lt;/bean&gt;
  
  &lt;/beans&gt;
  </code></pre>
  
  <p>apploicationContext.xml</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
  
  &lt;beans xmlns="http://www.springframework.org/schema/beans"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx"  xmlns:context="http://www.springframework.org/schema/context"
      xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
          http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd  http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd"&gt;
  
      &lt;context:annotation-config /&gt;
  
      &lt;context:component-scan base-package="training.impetus.tp" /&gt;
  
      &lt;context:component-scan base-package="training.impetus.tp.controller" /&gt;
  
      &lt;bean id="jacksonMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"&gt;&lt;/bean&gt;
  
      &lt;bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"&gt;
          &lt;property name="messageConverters"&gt;
              &lt;list&gt;
                  &lt;ref bean="jacksonMessageConverter" /&gt;
              &lt;/list&gt;
          &lt;/property&gt;
      &lt;/bean&gt;
  
  &lt;/beans&gt;
  </code></pre>
  
  <p>Sprung database.xml</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
  &lt;beans xmlns="http://www.springframework.org/schema/beans"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx"
      xmlns:context="http://www.springframework.org/schema/context"
      xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd         
                          http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd
                          http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"&gt;
  
      &lt;context:annotation-config /&gt;
  
      &lt;context:component-scan base-package="training.impetus.tp" /&gt;
  
  
  
  
  
  
      &lt;context:property-placeholder location="classpath:datasource.properties" /&gt;
  
      &lt;context:component-scan base-package="training.impetus.tp" /&gt;
  
      &lt;bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"&gt;
          &lt;property name="driverClassName" value="${driver}" /&gt;
          &lt;property name="url" value="${url}" /&gt;
          &lt;property name="username" value="${user}" /&gt;
          &lt;property name="password" value="${password}" /&gt;
      &lt;/bean&gt;
  
      &lt;bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"&gt;
          &lt;property name="jpaVendorAdapter"&gt;
              &lt;bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter"&gt;
                  &lt;property name="showSql" value="true" /&gt;
                  &lt;property name="generateDdl" value="true" /&gt;
                  &lt;property name="databasePlatform" value="org.hibernate.dialect.MySQLDialect" /&gt;
              &lt;/bean&gt;
          &lt;/property&gt;
          &lt;property name="persistenceUnitName" value="default"&gt;&lt;/property&gt;
          &lt;property name="dataSource" ref="dataSource" /&gt;
      &lt;/bean&gt;
  
  &lt;/beans&gt;
  
  
          &lt;context:component-scan base-package="training.impetus.tp.controller" /&gt;
  
          &lt;bean id="jacksonMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"&gt;&lt;/bean&gt;
  
      &lt;bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"&gt;
          &lt;property name="messageConverters"&gt;
              &lt;list&gt;
                  &lt;ref bean="jacksonMessageConverter" /&gt;
              &lt;/list&gt;
          &lt;/property&gt;
      &lt;/bean&gt;
  
  &lt;/beans&gt;
  </code></pre>
  
  <p>test case:</p>
  
  <pre><code>@ContextConfiguration(locations = {"classpath:mvc-config.xml"})
  @TransactionConfiguration(defaultRollback = true)
  @RunWith(SpringJUnit4ClassRunner.class)
  @Transactional
  public class TestUserController {
  
      @Before
      public void setUp() throws Exception {
      }
  
      @Test
      public void testGetAllUsers() {
          fail("Not yet implemented");
      }
  </code></pre>