我其中有一個彈簧安置應用Rest Controller
如下服務豆Spring不休息正常自動連接控制器
@RestController
public class IngestorController
{
@Autowired
private IngestorService ingestorService;
@RequestMapping(value = "/ingestor/createAndDeploy/{ingestorName}", method = RequestMethod.POST)
public void createAndDeploy(@PathVariable String ingestorName)
{
ingestorService.createAndDeploy(ingestorName);
}
}
Simlilarly我有一個Service Bean
如下
@Service
public class IngestorService
{
@Autowired
private IngestorCommandBuilder ingestorCommandBuilder;
private String uri;
private DeployTemplate deployTemplate;
public void init() throws URISyntaxException
{
deployTemplate = new DeployTemplate(new URI(uri));
}
@Transactional
public void createAndDeploy(Ingestor ingestor)
{
//.....
}
}
我有Spring config
爲以下顯示
<bean id="ingestorCommandBuilder" class="org.amaze.server.ingestor.IngestorCommandBuilder" />
<bean id="ingestorService" class="org.amaze.server.service.IngestorService" init-method="init">
<property name="uri" value="http://localhost:15217" />
</bean>
<bean id="ingestorController" class="org.amaze.server.controller.IngestorController"/>
有時我嘗試啓動應用程序上下文開始的應用程序上下文,並且它觸及IngestorService中的init方法,也爲該服務bean啓動deployTemplate對象。
但是這個bean對於IngestorController並不是自動裝配的。當我從郵遞員到剩下的端點時,服務bean的deployTemplate屬性爲null ..在Controller中分配給ingestorService變量的對象是一個不同的對象,而不是爲init方法調用的對象...
我試圖使服務豆單(即使默認範圍是單身),但力工作...
我無法找出我做了錯誤的。任何建議表示讚賞...
爲什麼你有''聲明並用'@ Service'註解了這個類? –
您是否在使用任何
您好,感謝您的回覆...是的,我正在使用上下文組件掃描... \t –