我有一个Spring-boot应用程序A,它在另一个线程中调用另一个服务B。
在调用服务B之前调用MyHeaderFilter。
当ClientRequestFilter在不同的线程中被调用时,它不知道spring bean。
如何在不更改SpecialLogger的情况下访问SomeBean
@Component
@Provider
public class MyHeaderFilter implements ClientRequestFilter
{
@Inject
private SomeBean someBean;
@Override
public void filter(ClientRequestContext requestContext) throws
IOException {
someBean.someMethod(); // Here I get BeanCreationException
}
}
@Component
public class SpecialLogger
{
@Inject
private ExecutorService executorService;
public void logPayload(String data){
Future<Void> rt = executorService.submit(
/* Here it calls another service B */
);
}
}
我需要在不更改SpecialLogger的情况下访问MyHeaderFilter中的SomeBean