The copy of BCEL included in jaxp appears to corrupt the LocalVariableTable (LVT) and the LocalVariableTypeTable (LVTT) of methods that use generics. This seems to be in a bug in the original BCEL source I ported over in jdk8003147. I can reproduce the same issue on the last BCEL 6.0 snapshot.
I did not notice this earlier as the porting work I did in jdk8003147 fixes generic support enough so that the corrupted classes pass HotSpot's bytecode verification. (Un)fortunately JRockit's byte code verification is much stricter and does not allow these classes to be loaded. This means that when JRockit uses BCEL to instrument classes, we end up unable to load the resulting classes. That means that this issue breaks JRockits byte code instrumentation for generic-using code.