Skip to content

Commit db560c4

Browse files
committed
修复feign加载RibbonConnectionPoint后,服务报No ServletContext set的bug
1 parent aa7bd81 commit db560c4

File tree

1 file changed

+13
-6
lines changed

1 file changed

+13
-6
lines changed

spring-cloud-gray-client/src/main/java/cn/springcloud/gray/client/config/GrayDecisionFactoryConfiguration.java

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,9 @@
33
import cn.springcloud.gray.decision.DefaultGrayDecisionFactoryKeeper;
44
import cn.springcloud.gray.decision.GrayDecisionFactoryKeeper;
55
import cn.springcloud.gray.decision.factory.*;
6-
import org.apache.commons.collections.CollectionUtils;
76
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
87
import org.springframework.context.annotation.Bean;
98
import org.springframework.context.annotation.Configuration;
10-
import org.springframework.core.convert.ConversionService;
119
import org.springframework.core.convert.support.DefaultConversionService;
1210
import org.springframework.validation.Validator;
1311

@@ -41,13 +39,22 @@ public TraceIpGrayDecisionFactory traceIpGrayDecisionFactory() {
4139
}
4240
}
4341

42+
43+
/**
44+
* 不可引入spring mvc中的ConversionService, 否则会导致feign 加载时,找不到ServletContext, 从而出现异常:No ServletContext set
45+
*
46+
* @param validator 校验器
47+
* @param decisionFactories 灰度决策工厂类列表
48+
* @return 灰度决策工厂管理器
49+
*/
4450
@Bean
4551
@ConditionalOnMissingBean
4652
public GrayDecisionFactoryKeeper grayDecisionFactoryKeeper(
47-
List<ConversionService> conversionServices, Validator validator, List<GrayDecisionFactory> decisionFactories) {
48-
if (CollectionUtils.isNotEmpty(conversionServices)) {
49-
return new DefaultGrayDecisionFactoryKeeper(conversionServices.get(0), validator, decisionFactories);
50-
}
53+
/*List<ConversionService> conversionServices, */
54+
Validator validator, List<GrayDecisionFactory> decisionFactories) {
55+
// if (CollectionUtils.isNotEmpty(conversionServices)) {
56+
// return new DefaultGrayDecisionFactoryKeeper(conversionServices.get(0), validator, decisionFactories);
57+
// }
5158
return new DefaultGrayDecisionFactoryKeeper(DefaultConversionService.getSharedInstance(), validator, decisionFactories);
5259

5360
}

0 commit comments

Comments
 (0)