title: Singleton and @Autowired returning NULL
body: <p>I have a repository manager that manages my repositories.  I have the @Autowired to instantiate my properties, but they are always null.  The beans are correctly configured in my xml.  Any reason why?</p>
  
  <pre><code>public class RepositoryManager {
  
          private static RepositoryManager instance;
  
          private RepositoryManager()
          {
          }
  
         public static RepositoryManager Instance()
         {
              if(instance == null)
                   instance  = new RepositoryManager();
  
              return instance;
          }
  
          @Autowired
          private IUserRepository userRepository;
  
          @Autowired
          private IRoleRepository roleRepository;
  
          @Autowired
          private IAssetRepository assetRepository;
  
          public IUserRepository getUserRepository() {
              return userRepository;
          }
  
          public void setUserRepository(IUserRepository userRepository) {
              this.userRepository = userRepository;
          }
  
          public IRoleRepository getRoleReposttory() {
              return roleRepository;
          }
  
          public void setRoleReposttory(IRoleRepository roleRepository) {
              this.roleRepository = roleRepository;
          }
  
          public IAssetRepository getAssetRepository() {
              return assetRepository;
          }
  
          public void setAssetRepository(IAssetRepository assetRepository) {
              this.assetRepository = assetRepository;
          }
      }
  </code></pre>
  
  <p>dao.xml</p>
  
  <pre><code>    &lt;!-- Scans within the base package of the application for @Components to configure as beans --&gt;
      &lt;context:component-scan base-package="com.cisco.badges.data.*" /&gt;
  
      &lt;context:property-placeholder location="classpath:jdbc.properties"/&gt;
  
      &lt;bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"&gt;
          &lt;property name="driverClassName" value="${jdbc.driverClassName}"/&gt;
          &lt;property name="url" value="${jdbc.url}"/&gt;
          &lt;property name="username" value="${jdbc.username}"/&gt;
          &lt;property name="password" value="${jdbc.password}"/&gt;
        &lt;/bean&gt;
  
      &lt;bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"&gt;
          &lt;property name="dataSource" ref="dataSource" /&gt;
          &lt;property name="configurationClass" value="org.hibernate.cfg.AnnotationConfiguration"/&gt;
          &lt;property name="annotatedClasses"&gt;
            &lt;list&gt;
                &lt;value&gt;com.cisco.badges.data.domain.User&lt;/value&gt;
                &lt;value&gt;com.cisco.badges.data.domain.Role&lt;/value&gt;
                &lt;value&gt;com.cisco.badges.data.domain.Asset&lt;/value&gt;
                &lt;value&gt;com.cisco.badges.data.domain.UserRole&lt;/value&gt;
                &lt;value&gt;com.cisco.badges.data.domain.UserRole$UserRolePK&lt;/value&gt;
                &lt;value&gt;com.cisco.badges.data.domain.UserAsset&lt;/value&gt;
                &lt;value&gt;com.cisco.badges.data.domain.UserAsset$UserAssetPK&lt;/value&gt;
            &lt;/list&gt;
          &lt;/property&gt;
          &lt;property name="configLocation"&gt;
              &lt;value&gt;classpath:hibernate.cfg.xml&lt;/value&gt;
          &lt;/property&gt;
          &lt;property name="hibernateProperties"&gt;
              &lt;props&gt;
                   &lt;prop key="hibernate.show_sql"&gt;true&lt;/prop&gt;
                  &lt;prop key="hibernate.format_sql"&gt;true&lt;/prop&gt;
              &lt;/props&gt;
          &lt;/property&gt;
      &lt;/bean&gt;
  
       &lt;tx:annotation-driven/&gt;
  
       &lt;bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"&gt;
          &lt;property name="sessionFactory" ref="sessionFactory" /&gt;
      &lt;/bean&gt;
  
  &lt;/beans&gt;
  </code></pre>
  
  <p>userrepository.java</p>
  
  <pre><code>    @Repository("userRepository")
  public class UserRepository extends
          BaseRepository&lt;User, Long&gt; implements
          IUserRepository {
  
      @Autowired
      public UserRepository(SessionFactory sessionFactory) {
          super(sessionFactory);
      }
  </code></pre>