Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8266598

Exception values for AnnotationTypeMismatchException are not always informative

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Fixed
    • Icon: P4 P4
    • 17
    • None
    • core-libs

      AnnotationTypeMismatchExceptions indicate a change in a class file. However, the values that explain the found, mismatched value are not always explanatory:

      - If an enumeration was found where none should be defined, the type is expressed as a descriptor, not as a binary name. Rather, a binary name should be displayed.
      - If an annotation was found where not should be defined, the annotations implementing proxy type is displayed instead of the actual annotation type. Rather, the annotation value should be displayed.
      - If an array of an incompatible type was found, the array's component type's integer is displayed. Rather, the component type's character symbol should be displayed. (Test requires another fix via https://bugs.openjdk.java.net/browse/JDK-8266766 first which then would entail a validation of this change.)

      The message provided by AnnotationTypeMismatchExceptions is deliberately undefined such that this should not break any contract.

            winterhalter Rafael Winterhalter
            winterhalter Rafael Winterhalter
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: