Ani jsem nevěděl, že použití tnsnames s tenkým ovladačem je možné, ale zřejmě to bylo přidáno někde ve verzi 10:
http://docs.oracle.com/cd/B19306_01/java.102/b14355/urls.htm#BEIDIJCE
Konkrétně:
Poznámka:
Když používáte TNNames s ovladačem JDBC Thin, musíte nastavit vlastnost oracle.net.tns_admin na adresář, který obsahuje váš soubor tnsnames.ora.
java -Doracle.net.tns_admin=%ORACLE_HOME%\network\admin
Jak již bylo zmíněno, nezkontroloval jsem, zda je to skutečně funguje.
Nemyslím si, že logika "najít skutečný síťový konfigurační adresář" je dostupná prostřednictvím nějaké funkce Oracle. Budete to muset udělat ručně, jak je uvedeno ve vaší otázce, nebo se možná spolehnout na přítomnost proměnné prostředí TNS_ADMIN. V takovém případě by vyvolání javy bylo
java -Doracle.net.tns_admin=%TNS_ADMIN%