2012-12-20 9 views
5

Bir spring-mvc 3.2.RELEASE projesinde, bana enjekte edilen nesneleri kolayca almak için org.springframework.data.repository.support.DomainClassConverter kullanmak istiyorum.Varsayılanları korurken özel bir dönüştürme hizmeti kayıt olun.

<beans:bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean" /> 

<beans:bean id="conversionService" 
    class="org.springframework.core.convert.support.DefaultConversionService" /> 

<beans:bean 
    class="org.springframework.data.repository.support.DomainClassConverter"> 
    <beans:constructor-arg ref="conversionService" /> 
</beans:bean> 

<annotation-driven conversion-service="conversionService" /> 

Ama sonra Bahar Joda saat türleri ile başa çıkmak için biçimlendirici yüklenmiyor ve ben "tipi java.lang.String malı değerinin dönüştürülemedi olsun: Bu yapılandırma kullanırken

iyi çalışır Joda dönüşüm çalışmalarını değil, varlık enjeksiyon sadece

<annotation-driven/> 

kullanma özelliği için gerekli olan tip org.joda.time.LocalDate"

için.

Nasıl çalışıyorsunuz?

+0

Neyi yanlış yaptığınızı anladınız mı? –

cevap

3

Sorunun yanıtı verip vermediğinden emin değilim, ancak benzer bir soruna rastladım ve bunu nasıl çözdüm.

Ben sonuç ne @NA nitelendirildi documentation

<bean id="conversionService" 
    class="org.springframework.context.support.ConversionServiceFactoryBean"> 
    <property name="converters"> 
     <list> 
      <bean class="example.MyCustomConverter"/> 
     </list> 
    </property> 
</bean> 

kullanarak özel bir çevirici ve dönüşüm hizmetini hayata geçirdiklerini

- Bu varsayılan joda zaman destek ve alakasız bir denetleyici aşağıdaki tanım artık

çalışır kaybeder
@PathVariable(value="day") @DateTimeFormat(pattern=DATE_FORMAT) LocalDate date 

Çözümler org.springframework.context.support.ConversionServiceFactoryBean kullanmak yerine org.springframework.format.support.FormattingConversionServiceFactoryBean kullanmaya başladım.

+0

Bu iyi çalışır, ben FormattingConversionServiceFactoryBean sağlanan listeyi alır ve bunları varsayılanlara ekler, ancak ConversionServiceFactoryBean yalnızca listenin tamamen yerini alır belgelerinden alırsınız. –

İlgili konular