- This topic has 27 replies, 12 voices, and was last updated 18 years ago by martin.stransfeldt.
-
AuthorPosts
-
antoineMemberBrian,
After installing 4.1M2 my command line was :
C:\eclipse\eclipse.exe -vmargs -Duser.language=en -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M -Dosgi.splashLocation="C:\Program Files\MyEclipse\eclipse\MyEclipseSplash.bmp"
As my windows config is in french the JVM was taking en_FR as language code which is obviously unknow (french people are known to be poor english speakers 😉 ).
I looked into my backups and saw that I had a different command line when I was using 4.0.
Changing the command line toC:\eclipse\eclipse.exe -vmargs -Duser.language=en_US -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M -Dosgi.splashLocation="C:\Program Files\MyEclipse\eclipse\MyEclipseSplash.bmp"
Make the whole thing work.
It also work with fr_FR but doesn’t bring anything except loosy translated french error messages when using the driver.
Thanks for your prompt answer
Antoine
Brian FernandesModeratorAntoine,
That’s great. Glad you got it working and thank you for posting your solution for everyone to benefit from.
Best,
Brian.
mhavilaMemberI’m experiencing the same problem, but it is not related only to MyEclipse. In fact, I’m receiving the ORA-12705 error even running JDBC test cases directly on JVM command line (java).
What I’ve discovered up to now is:I’ve tested Oracle JDBC driver versions 8i R3 (8.1.7.1), 9i R2 (9.2.0.5) and 10g R2 (10.2.0.1).
All these are available for download from Oracle TechNet (OTN): otn.oracle.com(1) Driver 8.1.7.1 (classes12.zip + nls_charset12.zip) worked ok with all tested versions of Oracle Server (7.3.4 to 9.2.0.6, I’ve not tested on a 10g server), but it lacks some recent features, specially those related to full JDBC 2.0 and 3.0 compatibility. For instance, this version has poor support for LOB features.
(2) Driver 9.2.0.5 (ojdbc14.jar + nls_charset12.jar) worked ok on Oracle server versions 8i and 9i (again, no test with 10g), but there are many incompatibilities and errors with the old 7.3.4, since it’s a desupported server version. This driver version has good compatibility with JDBC 2.0 and supports some features of JDBC 3.0.
(3) Driver 10.2.0.1 (ojdbc14.jar + orai18n.jar) do not work with Oracle server 9i on UNIX, although it worked on Windows. Server versions 7 and 8i was not tested, since they are desupported for this version of driver, and I currently have no 10g server to test with. The error, when trying to estabilish a connection, is exactly that reported by others:
java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1 ORA-12705: invalid or unknown NLS parameter value specified
I’ve tried many NLS configuration options, with no avail.
kinghoMemberI can confirm that using -Duser.language=en_US will make it works.
Thanks!!!
King
Brian FernandesModeratorMhavila,
If none of the suggestions already in this thread work for you, I would suggest asking over at the oracle JDBC forum here:
http://forums.oracle.com/forums/forum.jspa?forumID=99&start=0Best,
Brian.
Ey�un NielsenMemberI’m have been struggling with the same problems with the thin driver connecting to an Oracle 8.1.7 on HP-UX from Windows 2000.
And using -Duser.language=en_US solves it for the MyEclipse DB Browser… BUT I still get the error (ORA-12705) in a small java application where I just try to get a connection with exactly the same driver?!? And yes – I do specify -Duser.language=en_US in the launch configuration – I also tried using System.setProperty(“user.language”, “en_US”) directly in my code…
Also – I have tried Oracles Raptor early access release 2 with the same problems…
Then I hoped that I would somehow get some more log/trace messages if I used ojdbc14_g.jar instead of ojdbc14.jar, because Oracles download page states: “…same as ojdbc14.jar, except that classes were compiled with “javac -g” and contain some tracing information….”
So I tried that – and guess what? I get a connection with no problem in MyEclipse DB Browser, my java application and even in Raptor (just put ojdbc14_g.jar in %RAPTOR_HOME%/jdev/lib/patches) and btw now I don’t need to specify -Duser.language=en_US.
Slightly confused! But happy… 😀
Best regards,
Eyðun
hefterMemberHallo, did you know there are other countries in the world than america??? 😉
Look at oracles enterprise console (v10….) menu-> object (or so) -> show/edit details -> in first tab (common) -> press button (all initial params ) -> find NLS_TERRITORY and NLS_LANGUAGE
Use these Values in the -DNLS_LANG= string and reues the part last part .WE8ISO8859P1
I also changed the -Duser.language= to my iso language.Here an example for germany: ( A small country in europe ) 😉
“C:\Program Files\eclipse3.1.2\eclipse.exe” -vmargs -Duser.language=de -DNLS_LANG=GERMAN_GERMANY.WE8ISO8859P1 -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M
Frank
NickolaIvshinMemberAfter changing ini file try to run Eclipse with -clear parameter in command line. It clears the cashe. It helps. I am sure. 😀
antoineMemberHi,
The NLS errors reappears in 5.0M1. I put the -Duser.language=en_US in command line but the error remains. No problem when going back to 4.1.1 with the same workspace and the same command line.
Any clue ?
antoineMemberI solved my problem, looking in log I saw that the system was using language=en_US_FR as locale. So I put a language=fr in the command line and the systme now use fr_FR as locale. I guess that this problem only occure for person outside speaking english countries.
ThefaceMemberDon’t use param of -Duser.language is best way!
shariMemberHi,
a quick update on this for all interested parties as I had to research into the very same problem and only found partial answers around.
I am not an Oracle representative so whatever I’m saying, you cannot blame Oracle for it, and you should check for yourself if in doubt.This is a known bug for Oracle with 10.2.x (up to 10.2.0.1) drivers relating to mixing language and locales, e.g. en_DE or en_IT.
Normally you can set user.language and user.country or NLS_LANG with vmargs on the Eclipse command line, but these drivers will not be able to mix a language with a territory using a particular method, which seems to be the method mostly everybody uses today 🙂
It is declared as fixed in 10.2.0.2, for en_DE at least according to the metalink db.
There is a patch for Oracle DBMS 10.2.0.2 on Windows available to supported customers, but it is not available as a public download as of today. I just checked and the 10.2.0.2 dist is available for public download for Linux; adventurers might want to try downloading the whole distro to extract the jdbc drivers. Check licenses carefully to understand if it’s acceptable – I’m not going to do it so I didn’t elaborate.
People with metalink access can monitor entry #4629654 (which is specific to en_DE) and related entries to stay updated.
Currently, the easiest workaround is downgrading to 10.1 drivers, unless you need 10.2 explicitly of course.Generally speaking, if you routinely update your jdbc drivers only because they become available, well my advice is simply *change habit*, and update only if you need to do it for some specific reason. Bugs are frequently solved and re-introduced, unfortunately. This particular situation is not uncommon at all.
This said, I think MyEclipse should think about introducing support for setting language, locale and character sets option at the connection level for at least “major” databases, as this is a very common issue and for professional developers outside of USA, and it is very common to fight with mixed bags of these settings at the same time, even in the same project. It is inconvenient having to start a different instance of MyEclipse to work with different databases, considering the resources needed by MyEclipse to run smoothly, if the only way to set these parameters is on the command line.
I understand there is no standard way to approach setting this parameters programmatically at connection open time across databases, but we’re sure the MyEclipse team can come out with a clever idea to work around this issue 🙂Keep up the good work!
Davide
martin.stransfeldtMemberHi,
I freshly installed MyEclipse 5.1.0 GA and wanted to use the DB Browser to connect to an Oracle 10g XE Univ database schema.
I’m working on an german Windows XP Pro machine.By default the DB Browser is not able to open the database schema… a popup provides me ORA-12705 error.
I tried out different combinations of command line arguments (in myeclipse shortcut to eclipse.exe):
– specification of “-Duser.language=en” failed (standard after installation)
– specification of “-Duser.language=en_US” failed
– specification of “-Duser.language=en -DNLSLANG=GERMAN_GERMANY.UTF8” failed
– specification of “-Duser.language=en_US -DNLSLANG=GERMAN_GERMANY.UTF8” failedLeaving those parameters will open the Oracle database schema in DB Browser without an error!!!
So, Theface’s post is best tip for me 😉
Greetings to the MyEclipse Crew – good job!
Martin -
AuthorPosts