-
Enhancement
-
Resolution: Fixed
-
P2
-
7u40
-
b12
-
b33
-
Verified
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8020262 | 7u60 | Mandy Chung | P2 | Resolved | Fixed | b01 |
JDK-8020344 | 7u45 | Mandy Chung | P2 | Closed | Fixed | b03 |
JEP-176 proposes to remove sun.reflect.Reflection.getCallerClass(int) that has incompatibility concern since there are existing applications depending on this private API such as Oracle Diagnostic Logging and jidesoft library that breaks Oracle Primavera.
The jdk part of JEP-176 has been backported to 7u25 but keep sun.reflect.Reflection.getCallerClass(int) as the mitigration plan (JDK-8014745) in 7u25.
The following describes the transition plan to allow customers to migrate their applications away from this private API:
1. Disable sun.reflect.Reflection.getCallerClass(int) in 7u40 and provide a flag to re-enable it
2. Determine how this private API is being used and the use cases
3. Remove this private API if there is no valid use case or there is a proper replacement for it. Allow at least 2 CPU releases to allow customers to make appropriate change. So the earliest for the removal is 7u55. If there are valid use cases but no proper replacement, we may keep this private API in jdk7u for longer.
The jdk part of JEP-176 has been backported to 7u25 but keep sun.reflect.Reflection.getCallerClass(int) as the mitigration plan (JDK-8014745) in 7u25.
The following describes the transition plan to allow customers to migrate their applications away from this private API:
1. Disable sun.reflect.Reflection.getCallerClass(int) in 7u40 and provide a flag to re-enable it
2. Determine how this private API is being used and the use cases
3. Remove this private API if there is no valid use case or there is a proper replacement for it. Allow at least 2 CPU releases to allow customers to make appropriate change. So the earliest for the removal is 7u55. If there are valid use cases but no proper replacement, we may keep this private API in jdk7u for longer.
- backported by
-
JDK-8020262 Disable sun.reflect.Reflection.getCallerClass(int) with a temporary switch to re-enable it
- Resolved
-
JDK-8020344 Disable sun.reflect.Reflection.getCallerClass(int) with a temporary switch to re-enable it
- Closed
- relates to
-
JDK-8017099 Remove sun.reflect.Reflection.getCallerClass(int) method
- Closed
-
JDK-8016814 sun.reflect.Reflection.getCallerClass returns the wrong stack frame
- Closed
-
JDK-4851444 (reflect) equivalent of sun.reflect.Reflection.getCallerClass should be exposed
- Closed