mercredi 25 février 2015

spring autowired vs resource

So my question why did @javax.annotation.Resource worked but @AutoWired did not. For a test on a Restful controller, I was trying to inject MappingJackson2HttpMessageConverter with @Autowired, on start up the container failed to find a qualifying bean even though that class was on the path. Now, to solve this I went into a context xml file and added the bean:



<bean id="jsonConverter" class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>


Then in the test class had member variable:



@javax.annotation.Resource(name="jsonConverter")
private MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter;


Then spring finds the bean. Does Autowire only work for beans that were identified as beans by package scan?


Thanks ahead of time.


Aucun commentaire:

Enregistrer un commentaire