File tree Expand file tree Collapse file tree 1 file changed +14
-4
lines changed
spring-web/src/main/java/org/springframework/http/converter/json Expand file tree Collapse file tree 1 file changed +14
-4
lines changed Original file line number Diff line number Diff line change @@ -674,17 +674,27 @@ private void registerWellKnownModulesIfAvailable(ObjectMapper objectMapper) {
674
674
// jackson-datatype-jdk8 not available
675
675
}
676
676
}
677
+
677
678
// Java 8 java.time package present?
678
679
if (ClassUtils .isPresent ("java.time.LocalDate" , this .moduleClassLoader )) {
679
680
try {
680
- Class <? extends Module > jsr310Module = (Class <? extends Module >)
681
- ClassUtils .forName ("com.fasterxml.jackson.datatype.jsr310.JSR310Module " , this .moduleClassLoader );
682
- objectMapper .registerModule (BeanUtils .instantiate (jsr310Module ));
681
+ Class <? extends Module > javaTimeModule = (Class <? extends Module >)
682
+ ClassUtils .forName ("com.fasterxml.jackson.datatype.jsr310.JavaTimeModule " , this .moduleClassLoader );
683
+ objectMapper .registerModule (BeanUtils .instantiate (javaTimeModule ));
683
684
}
684
685
catch (ClassNotFoundException ex ) {
685
- // jackson-datatype-jsr310 not available
686
+ // jackson-datatype-jsr310 not available or older than 2.6
687
+ try {
688
+ Class <? extends Module > jsr310Module = (Class <? extends Module >)
689
+ ClassUtils .forName ("com.fasterxml.jackson.datatype.jsr310.JSR310Module" , this .moduleClassLoader );
690
+ objectMapper .registerModule (BeanUtils .instantiate (jsr310Module ));
691
+ }
692
+ catch (ClassNotFoundException ex2 ) {
693
+ // OK, jackson-datatype-jsr310 not available at all...
694
+ }
686
695
}
687
696
}
697
+
688
698
// Joda-Time present?
689
699
if (ClassUtils .isPresent ("org.joda.time.LocalDate" , this .moduleClassLoader )) {
690
700
try {
You can’t perform that action at this time.
0 commit comments