1414import org .springframework .stereotype .Component ;
1515
1616import javax .batch .operations .BatchRuntimeException ;
17+ import java .util .Date ;
1718import java .util .Map ;
1819import java .util .Optional ;
1920import java .util .UUID ;
@@ -55,7 +56,7 @@ public JobExecution start(JobConfig jobConfig) {
5556 jobPropertyResolvers .started (jobConfig );
5657
5758 Map <String , JobParameter > params = Optional .ofNullable (jobConfig .getProperties ()).orElse (emptyMap ()).entrySet ().stream ()
58- .collect (toMap (e -> e . getKey () , e -> new JobParameter (e .getValue ())));
59+ .collect (toMap (Map . Entry :: getKey , e -> createJobParameter (e .getValue ())));
5960 if (addUniqueJobParameter )
6061 params .put ("uuid" , new JobParameter (UUID .randomUUID ().toString ()));
6162 JobParameters jobParameters = new JobParameters (params );
@@ -71,4 +72,15 @@ public JobExecution start(JobConfig jobConfig) {
7172 jobConfig .getName (), jobConfig , e .getMessage ()), e );
7273 }
7374 }
75+
76+ private JobParameter createJobParameter (Object value ) {
77+ if (value instanceof Date )
78+ return new JobParameter ((Date ) value );
79+ else if (value instanceof Long )
80+ return new JobParameter ((Long ) value );
81+ else if (value instanceof Double )
82+ return new JobParameter ((Double ) value );
83+ else
84+ return new JobParameter ("" + value );
85+ }
7486}
0 commit comments