0
我可以在主类中成功读取HandlerSettings的自动装配实例,所以我知道我的application.properties条目是正确的。自动装配是否从PerConnectionWebSocketHandler实例化的类中工作?
@Component
@ConfigurationProperties(prefix="handler")
public class HandlerSettings {
private int timeout;
public int getTimeout(){
return timeout;
}
public void setTimeout(int timeout){
this.timeout = timeout;
}
}
我有试图自动装配在类MyHandler的,这是一个PerConnectionWebSocketHandler中实例化的字段困难。
@SpringBootApplication
@RestController
@EnableWebSocket
@EnableConfigurationProperties(HandlerSettings.class)
public class MyController implements WebSocketConfigurer{
@Bean
public WebSocketHandler myHandler() {
return new PerConnectionWebSocketHandler(MyHandler.class));
}
我想在MyHandler的抽象基类中自动装入字段。
@Component
public abstract class Handler implements WebSocketHandler {
@Autowired
private HandlerSettings handlerSettings;
...
}
从MyHandler的继承处理程序:
public class MyHandler extends Handler
的例子在Spring documentation没有解决如何在继承的任一情况下,或类实例化与PerConnectionWebSocketHandler的方式做。
我已经尝试过在处理程序中自动装入字段失败。如果该类是由PerConnectionWebSocketHandler实例化的,那么可以自动装配吗?如果是这样,有什么特别的我必须做自动装配基类,但不是扩展它的类?
此更改不足以获取MyHandler中application.properties中配置的HandlerSettings。 – mattm
为我工作,我的处理程序类中的自动装配bean按预期工作 – Christian