0 Replies Latest reply on Mar 8, 2012 8:55 AM by rodrigo.uchoa

    Is is possible to instrument java core classes? Classes loaded by the bootstrap classloader




      I want to add an "insertBefore" on a method of a core JDK 5 class. For some reason it´s not working. Here's the code:



      ClassPool pool = ClassPool.getDefault();
      CtClass ctClass = pool.get("com.sun.org.apache.xerces.internal.impl.xs.XSMessageFormatter");
      CtMethod ctMethod = ctClass.getDeclaredMethods()[0];



      The com.sun.org.apache.xerces.internal.impl.xs.XSMessageFormatter comes bundled with the JDK, it's inside rt.jar. After the snippet above, I run some code that forces the XSMessageFormatter class to run, but my inserted code never runs. I can only get this to work on my own classes. This code is running as a simple standalone app.


      Any ideas?