Uploaded image for project: 'JikesRVM'
  1. JikesRVM
  2. RVM-814

Wrong exception from Java reflection

    Details

    • Type: Bug
    • Status: Closed
    • Priority: High
    • Resolution: Fixed
    • Affects Version/s: 3.0.1, git tip
    • Fix Version/s: 3.1.0
    • Component/s: Runtime: Class Library
    • Labels:
      None
    • Environment:

      Intel IA32, Linux 2.6.27, Ubuntu 8.10

      Description

      It appears that Jikes RVM has a bug in the implementation of its reflection.
      For the detail, look at the patch and the test case: reflection.patch and
      Reflection.java. Try the following.

      1. To see the bug, try the following three command lines.

      $javac ReflectionTest.java

      $java -showversion ReflectionTest
      java version "1.6.0_10"
      Java(TM) SE Runtime Environment (build 1.6.0_10-b33)
      Java HotSpot(TM) Server VM (build 11.0-b15, mixed mode)

      newInstance: pass
      invokeVirtual: pass
      invokeStatic: pass

      $rvm ReflectionTest
      ...
      newInstance: pass
      invokeVirtual: fail
      unexpected cause of the Invocation target exception:
      java.lang.reflect.InvocationTargetException
      ...
      invokeStatic: fail
      unexpected cause of the Invocation target exception:

      2. To correct the bug, try the following.

      • Apply the patch: reflection.patch
      • Build Jikes RVM
      • Run it

      $rvm ReflectionTest
      newInstance: pass
      invokeVirtual: pass
      invokeStatic: pass

        Attachments

          Activity

            People

            • Assignee:
              dgrove David Grove
              Reporter:
              bclee Byeong Lee
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: