Uploaded image for project: 'CXF'
  1. CXF
  2. CXF-6322

AbstractSearchConditionParser not working with UUID fields

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 3.0.4
    • Fix Version/s: 3.1, 3.0.5
    • Component/s: JAX-RS
    • Labels:
      None
    • Estimated Complexity:
      Unknown

      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);

        Attachments

          Activity

            People

            • Assignee:
              sergey_beryozkin Sergey Beryozkin
              Reporter:
              slavb18 Vjacheslav Borisov
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: