Description
Using of FIQL expression like bean.uuid=91d6350e-4bf5-42e8-9828-33767c6cb384
Where uuid is of type java.util.UUID
leads to java.lang.InstantiationException: java.util.UUID
at line 194: nextObject = returnType.newInstance();
Becouse java.util.UUID does not have no-arg constructor.
Istead of this InjectionUtils.isPrimitive should return true for java.util.UUID, then execution path should go to if (lastTry) { branch
and convertStringToPrimitive is working correctly with java.util.UUID
Quick fix is to change line 168 - add " ||returnType.equals(java.util.UUID.class): "
boolean isPrimitive = !returnCollection
&& InjectionUtils.isPrimitive(returnType) || returnType.isEnum() ||returnType.equals(java.util.UUID.class);