GlobalChannelInterceptor传递模式数组



我是Spring Integration 4.3.13,在配置@GlobalChannelInterceptor 时尝试传递模式

以下是的示例

@Configuration
public class IntegrationConfig{
@Bean
@GlobalChannelInterceptor(patterns = "${spring.channel.interceptor.patterns:*}")
public ChannelInterceptor channelInterceptor(){
return new ChannelInterceptorImpl();
}
}

属性文件具有以下值:

spring.channel.intercept.patterns=*intchannel,*事件

我使用的是以这两个字符串结尾的名称的直接通道

  1. springintchannel
  2. 注册事件

使用上面的配置,两个通道都应该配置拦截器,但没有配置。

当前不支持逗号分隔值。

我同意我们需要解决这个问题,所以请随时就此事提出JIRA,我们将从其他地方提交解决方案。

同时,您可以将此作为一种变通方法:

@Bean
public GlobalChannelInterceptorWrapper channelInterceptorWrapper(@Value("${spring.channel.interceptor.patterns:*}") String[] patterns) {
GlobalChannelInterceptorWrapper globalChannelInterceptorWrapper = new GlobalChannelInterceptorWrapper(channelInterceptor());
globalChannelInterceptorWrapper.setPatterns(patterns);
return globalChannelInterceptorWrapper;
}

相关内容

  • 没有找到相关文章

最新更新