我有一个带有此签名的Spring Controller
public ResponseEntity<blabla> find(@RequestParam Long id, @RequestParam Long version, @RequestParam CheckedItemType type)
我正在尝试使用Jmeter将第三个参数设置为的http请求: type = 0 text / plain,我得到一个400错误代码,原因是控制器无法将字符串转换为CheckedItemType。
关于如何解决这个问题的任何想法吗?
答案 0 :(得分:0)
这里是一个例子:
public enum Modes {
ALPHA, BETA;
}
字符串到枚举转换器:
public class StringToEnumConverter implements Converter<String, Modes> {
@Override
public Modes convert(String from) {
return Modes.valueOf(from);
}
}
注册我们的转换器:
@Configuration
public class WebConfig implements WebMvcConfigurer {
@Override
public void addFormatters(FormatterRegistry registry) {
registry.addConverter(new StringToEnumConverter());
}
}