Discussions
Categories
- 197K All Categories
- 2.5K Data
- 546 Big Data Appliance
- 1.9K Data Science
- 450.8K Databases
- 221.9K General Database Discussions
- 3.8K Java and JavaScript in the Database
- 31 Multilingual Engine
- 552 MySQL Community Space
- 479 NoSQL Database
- 7.9K Oracle Database Express Edition (XE)
- 3.1K ORDS, SODA & JSON in the Database
- 556 SQLcl
- 4K SQL Developer Data Modeler
- 187.2K SQL & PL/SQL
- 21.4K SQL Developer
- 296.3K Development
- 17 Developer Projects
- 139 Programming Languages
- 293K Development Tools
- 110 DevOps
- 3.1K QA/Testing
- 646.1K Java
- 28 Java Learning Subscription
- 37K Database Connectivity
- 158 Java Community Process
- 105 Java 25
- 22.1K Java APIs
- 138.2K Java Development Tools
- 165.3K Java EE (Java Enterprise Edition)
- 19 Java Essentials
- 162 Java 8 Questions
- 86K Java Programming
- 81 Java Puzzle Ball
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 94.3K Java SE
- 13.8K Java Security
- 205 Java User Groups
- 24 JavaScript - Nashorn
- Programs
- 468 LiveLabs
- 39 Workshops
- 10.2K Software
- 6.7K Berkeley DB Family
- 3.5K JHeadstart
- 5.7K Other Languages
- 2.3K Chinese
- 175 Deutsche Oracle Community
- 1.1K Español
- 1.9K Japanese
- 233 Portuguese
Security Policy file entry to allow "Arrays.useLegacyMergeSort" to be set ?

Hi,
Question as title :
I need to run a legacy Java desktop application under a Java Security Policy file. The application calls the following :
System.setProperty("java.util.Arrays.useLegacyMergeSort", "true");
When this line executes I get an exception as follows :
"Exception in thread "main" java.security.AccessControlException: access denied (
java.util.PropertyPermission java.util.Arrays.useLegacyMergeSort write)
at java.security.AccessControlContext.checkPermission(Unknown Source)..."
I have added the following (and several variants of it) to my Java Security Policy file with no luck, can anyone tell me what I am doing wrong please ?
grant {
permission java.security.SecurityPermission "setProperty.java.util.Arrays.useLegacyMergeSort";
};
Thanks,
Answers
-
I have some more information / clarification :
The legacy application uses the JRE v6 so I downloaded the openjdk-6 source to see if I could see a workaround. I found that the key "useLegacyMergeSort" did not occur anywhere in that source code whereas it does appear in file jdk\src\share\classes\java\util\Arrays.java of openjdk-7.
I infer from that that my problem is that the key is missing entirely rather than not being enabled by my Java Security Policy file.
So my question becomes : is there any way of permitting access to non-existing keys using a Java Security Policy file ? (I know I could just move to JRE 7 but that is not an option right now, though I may do that later).
Thanks again,
-
Just to update that I tried JRE / JDK version 7.0.55 and the problem persists.
Any ideas gratefully received,