Beanをコントローラに挿入しようとしていますが、Springがbean.xmlファイルを使用していないように見えます。注入オブジェクトへのスプリングパスパラメータ
コントローラ
@RestController
public class AppController {
private final EventService eventService;
private List<String> categories;
public AppController(final EventService eventService) {
this.eventService = eventService;
}
}
IはMyEveに注釈を付ける場合、その実装
public class MyEventService {
private final String baseURL;
public MyEventService(String baseURL){
this.baseURL = baseURL;
}
}
public interface EventService {
// some methods
}
を注入するオブジェクトのインタフェース:ここ
コードであります@Serviceを持つntService Springはコントローラにそれを注入しようとしますが、提供されていないbaseURLについて文句を言います( 'java.lang.String'タイプの適格なBeanはありません)。だから私は、SRC /メイン/リソース
<?xml version = "1.0" encoding = "UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:util="http://www.springframework.org/schema/util" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id="eventService" class="xyz.MyEventService">
<constructor-arg type="java.lang.String" value="fslkjgjbflgkj" />
</bean>
<bean id="categories" class="java.util.ArrayList">
<constructor-arg>
<list>
<value>music</value>
<value>comedy</value>
<value>food</value>
</list>
</constructor-arg>
</bean>
</beans>
下bean.xmlファイルを作成したが、それはのEventServiceのための豆を見つけることではない文句私はMyEventService春から@Serviceを削除するかのように動作するようには思えません。
何か不足していますか?
私はすでにAutowiredで試してみたが、春には、それはのEventServiceための豆を見つけることができないと言います。私がそれを(ほとんど)働かせる唯一の方法は、MyEventServiceにServiceを注釈することです:その場合、問題はbaseURLです。以前のプロジェクトでは、すべてのBeanがxmlファイルに定義されていましたが、注釈はなく、うまくいきました。 – algiogia