Uploaded image for project: 'JBoss AOP'
  1. JBoss AOP
  2. JBAOP-806

Using UnmodifiableLinkedHashMap constructor causes an UnsupportedOperationException exception to be thrown on IBM JDK

This issue belongs to an archived project. You can view it, but you can't modify it. Learn more

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Done
    • Affects Version/s: 2.1.6.CP02
    • Fix Version/s: 2.1.6.CP06, 2.2.3.GA, TRUNK
    • Component/s: None
    • Labels:
      None
    • Steps to Reproduce:
      Hide

      Just invoke the UnmodifiableLinkedHashMap using IBM JDK.

      Show
      Just invoke the UnmodifiableLinkedHashMap using IBM JDK.
    • Workaround:
      Workaround Exists
    • Workaround Description:
      Hide

      Change the way the super constructor is called to avoid calling the putAll method

      Show
      Change the way the super constructor is called to avoid calling the putAll method

      Description

      Read Summary. This error is caused because the IBM JDK LinkedHashMap invokes the putAll method on HashMap. Since the putAll method is overwridden in UnmodifiableLinkedHashMap.java, the UnmodifiableLinkedHashMap putAll method is called instead of the HashMap constructor and therefore throws that exception.

      The fix is to change the signature of the constructor being called (LinkedHashMap constructor) so that the putAll method is not called.
      Please see the patch that attempts to solve this issue.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              kabirkhan Kabir Khan
              Reporter:
              dcheung Dustin Kut Moy Cheung
              Archiver:
              samahaja Sagar Mahajan

                Dates

                Created:
                Updated:
                Resolved:
                Archived: