title: JUnit, Spring (SpringJUnit4ClassRunner) and Spring wiring is not working properly (tried running from Eclipse and command line Maven)?
body: <p>I am encountering an issue where a bean that I am attempting to wire via a spring config is not working?  The bean accessor is showing up as null during a check within my test case (but I do observe in the logs that the setter is actually setting it to a valid value.  Could really use some help...</p>
  
  <p>Here is the code:</p>
  
  <pre class="lang-java prettyprint-override"><code>@RunWith(SpringJUnit4ClassRunner.class)
  @ContextConfiguration(locations="/test-context.xml")
  public abstract class HistoryCompress extends TestBase {
  
      private CompressionArchive compressArchive;
      public void setCompressionArchive(CompressionArchive value)
      {
          this.logInfo("setting compression archive: %s, name: %s",value,value.getcompressionFormat());
          this.compressArchive=value;
      }
  
      protected CompressionArchive getCompressionArchive()
      {
          return this.compressArchive;
      }
  
      @Test
      public void getArchiveTypeName()
      {
          logInfo("test");
          this.assertNotNull(this.getCompressionArchive(),"compression archive is null");     
          this.assertNotNull(this.getCompressionArchive().getcompressionFormat(), "format name is null");
          logInfo("format: %s",this.getCompressionArchive().getcompressionFormat());
      }
  
  }
  
  public class HistoryZipCompress extends HistoryCompress 
  {
      public HistoryZipCompress()
      {
          this.logInfo("-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-");
          this.logInfo("-=-=-=--=- C'Tor HistoryZipCompress");
          this.logInfo("-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-");
      }
  
  }
  
  public interface CompressionArchive {
      public String getcompressionFormat();
      public Map&lt;String,String&gt; getArchiveHashes(InputStream stream,String password) throws Exception;
  }
  public class CompressionArchiveZip extends IntegrationBase implements CompressionArchive
  {
     /* implementation methods*/
  }
  </code></pre>
  
  <p><hr/>
  And then I'm trying to wire this up with the following config</p>
  
  <pre><code>&lt;beans xmlns="http://www.springframework.org/schema/beans"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
      xmlns:jaxws="http://cxf.apache.org/jaxws"
      xmlns:util="http://www.springframework.org/schema/util" 
      default-autowire="byName"
      xsi:schemaLocation="
          http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
          http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd
          http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
          http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"&gt;
  
      &lt;context:annotation-config /&gt;       
      &lt;bean class="gdg.scc.integration.testcases.file.history.HistoryZipCompress"&gt;
          &lt;property name="compressionArchive"  ref="zipArchive" /&gt;
      &lt;/bean&gt;     
      &lt;bean id="zipArchive" class="gdg.scc.integration.global.helpers.compression.impl.CompressionArchiveZip" /&gt;
  &lt;/beans&gt;
  </code></pre>
  
  <p>When I run this, I'm observing that HistoryZipCompress gets instantiated 3 different times, here is a tail from a run of getArchiveTypeName on HistoryZipCompress:</p>
  
  <pre>
  16-Jan 13:21:09 - INFO  - main - org.springframework.context.support.GenericApplicationContext - Refreshing org.springframework.context.support.GenericApplicationContext@2bfe605c: startup date [Wed Jan 16 13:21:09 MST 2013]; root of context hierarchy
  16-Jan 13:21:09 - INFO  - main - org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor - JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
  16-Jan 13:21:09 - INFO  - main - org.springframework.beans.factory.support.DefaultListableBeanFactory - Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@578bb31a: defining beans [fileSystemAPIUrl,defaultShopperAccount,shopperAccounts,orionAccountCredential,SCC.FileTypeMappings.js,fileTypeGenerator,regexToExtensionMap,activeMQMessageProperties,automatorServiceInfo,activeMQAutomtorPublisher,org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,logResultsToAutomator,orionAccountHelper,gdg.scc.integration.testcases.file.history.HistoryZipCompress#0,zipArchive,extensionToMimeType]; root of factory hierarchy
  16-Jan 13:21:09 - INFO  - main - integration.testcases.file.history.HistoryZipCompress - -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  16-Jan 13:21:09 - INFO  - main - integration.testcases.file.history.HistoryZipCompress - -=-=-=--=- C'Tor HistoryZipCompress
  16-Jan 13:21:09 - INFO  - main - integration.testcases.file.history.HistoryZipCompress - -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  16-Jan 13:21:09 - INFO  - main - integration.testcases.file.history.HistoryZipCompress - setting compression archive: integration.global.helpers.compression.impl.CompressionArchiveZip@6a367507, name: zip
  16-Jan 13:21:09 - INFO  - main - integration.testcases.file.history.HistoryZipCompress - test
  16-Jan 13:21:09 - INFO  - Thread-0 - org.springframework.context.support.GenericApplicationContext - Closing org.springframework.context.support.GenericApplicationContext@2bfe605c: startup date [Wed Jan 16 13:21:09 MST 2013]; root of context hierarchy
  16-Jan 13:21:09 - INFO  - Thread-0 - org.springframework.beans.factory.support.DefaultListableBeanFactory - Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@578bb31a: defining beans [fileSystemAPIUrl,fileTypeGenerator,regexToExtensionMap,activeMQMessageProperties,org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,integration.testcases.file.history.HistoryZipCompress#0,zipArchive,extensionToMimeType]; root of factory hierarchy
  </pre>