Discussions
Categories
- 385.5K All Categories
- 5.1K Data
- 2.5K Big Data Appliance
- 2.5K Data Science
- 453.4K Databases
- 223.2K General Database Discussions
- 3.8K Java and JavaScript in the Database
- 47 Multilingual Engine
- 606 MySQL Community Space
- 486 NoSQL Database
- 7.9K Oracle Database Express Edition (XE)
- 3.2K ORDS, SODA & JSON in the Database
- 585 SQLcl
- 4K SQL Developer Data Modeler
- 188K SQL & PL/SQL
- 21.5K SQL Developer
- 46 Data Integration
- 46 GoldenGate
- 298.4K Development
- 4 Application Development
- 20 Developer Projects
- 166 Programming Languages
- 295K Development Tools
- 150 DevOps
- 3.1K QA/Testing
- 646.7K Java
- 37 Java Learning Subscription
- 37.1K Database Connectivity
- 201 Java Community Process
- 108 Java 25
- 22.2K Java APIs
- 138.3K Java Development Tools
- 165.4K Java EE (Java Enterprise Edition)
- 22 Java Essentials
- 176 Java 8 Questions
- 86K Java Programming
- 82 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
- 208 Java User Groups
- 25 JavaScript - Nashorn
- Programs
- 667 LiveLabs
- 41 Workshops
- 10.3K Software
- 6.7K Berkeley DB Family
- 3.6K JHeadstart
- 6K Other Languages
- 2.3K Chinese
- 207 Deutsche Oracle Community
- 1.1K Español
- 1.9K Japanese
- 474 Portuguese
JAVA_TOOL_OPTIONS incorrectly picked up
Hi everyone,
in order to get appropriate locale settings I try to configure sqlci by "set JAVA_TOOL_OPTIONS='-Duser.lang=de -Duser.country=DE -Duser.timezone=Europe/Berlin -Dfile.encoding=ISO-8859-1'". As expected sqlci responds by "Picked up JAVA_TOOL_OPTIONS: '-Duser.lang=de -Duser.country=DE -Duser.timezone=Europe/Berlin -Dfile.encoding=ISO-8859-1'". Not trusting things I prefer to check using the script
script
var System = Java.type("java.lang.System");
System.out.println( System.getProperty("user.lang"));
System.out.println( System.getProperty("user.language"));
System.out.println( System.getProperty("user.region"));
System.out.println( System.getProperty("user.country"));
System.out.println( System.getProperty("user.timezone"));
System.out.println( System.getProperty("file.encoding"));
/
The output is:
de -Duser.country=DE -Duser.timezone=Europe/Berlin -Dfile.encoding=ISO-8859-1
de
null
DE
Europe/Berlin
Cp1252
See what has happened? The various properties should have been broken along white space boundaries, but instead everything is pushed into user.lang. On the other hand file.encoding is definitely wrong.
I tried with java 1.8.0_261. I do have other jdks on my system, but sqlci seems to have her own ideas of which one to choose.
Can anything be done about the java options? I would be thankful for every idea.
Yours,
user8632123.
Best Answer
-
Isn't this caused by the single quotes you have in the variable definition? I have been using the JAVA_TOOL_OPTIONS environment variable with SQLcl without any issue for years.
Answers
-
Isn't this caused by the single quotes you have in the variable definition? I have been using the JAVA_TOOL_OPTIONS environment variable with SQLcl without any issue for years.
-
Alright. No quotes at all, and it works. I hadn't thought of that! Thanks!