Java Spring引导getConversionService返回null

Java Spring引导getConversionService返回null,java,spring,spring-boot,Java,Spring,Spring Boot,我在使用spring boot时遇到了一个问题,在我的控制器中,我的参数类型是Date,URL如下/testDateParam?Date=2018-05-14,因此我向类型转换器写入了一个字符串,但我仍然收到了由以下原因引起的错误: java.lang.IllegalStateException:无法将类型为“java.lang.String”的值转换为所需的类型“java.util.Date”:找不到匹配的编辑器或转换策略 调试后,我在类TypeConverterDelegate中发现方法Co

我在使用spring boot时遇到了一个问题,在我的控制器中,我的参数类型是Date,URL如下
/testDateParam?Date=2018-05-14
,因此我向
类型
转换器写入了一个
字符串
,但我仍然收到了由以下原因引起的错误:

java.lang.IllegalStateException:无法将类型为“java.lang.String”的值转换为所需的类型“java.util.Date”:找不到匹配的编辑器或转换策略

调试后,我在类
TypeConverterDelegate
中发现方法
ConvertifEssential
为空:

ConversionService conversionService = this.propertyEditorRegistry.getConversionService(); 
我收到了一个
null
,但是如果我使用

SpringContextHolder.getBean("conversionService")
我可以获得我定义的有效转换服务:

@Bean(name="conversionService")
public ConversionServiceFactoryBean getConversionService() {
    ConversionServiceFactoryBean bean = new ConversionServiceFactoryBean();
    Set<Converter> converters = new HashSet<>();

    converters.add(new RyderStringToDateConverter());
    bean.setConverters(converters);
    return bean;
}
@Bean(name=“conversionService”)
公共转换服务工厂bean getConversionService(){
ConversionServiceFactoryBean=新的ConversionServiceFactoryBean();
Set converters=新的HashSet();
添加(新的RyderStringToDateConverter());
设置转换器(转换器);
返回豆;
}
在我创建的一个演示项目中,这很好,但在我的工作项目中,我真的不知道如何解决它,任何想法我都会很感激,谢谢


ps:spring boot是最新版本2.0.1。发布版

如果您使用Springboot,则不必覆盖参数转换。 只需尝试将其添加到控制器:

@RequestParam@DateTimeFormat(iso=DateTimeFormat.iso.DATE)日期日期


有关

的更多信息,请将您的问题格式化,使其易于阅读。对此,我深表歉意,并感谢您为此对其进行编辑me@RequestMapping(“/testDateParam”)@ResponseBody公共字符串testDateParam(@RequestParam@DateTimeFormat(pattern=“yyyy-MM-dd”)Date-Date){return-Date.toString();}仍然有相同的错误…您是否有默认的jackson反序列化/序列化,或者您是否为该项目使用自定义的反序列化/序列化?发现问题后,我使用shiro来控制我的权限,但在调度请求时不知何故出现了一些错误,难以调试