Дори не знаех, че използването на tnsnames с тънкия драйвер е възможно, но очевидно беше добавено някъде във версия 10:
http://docs.oracle.com/cd/B19306_01/java.102/b14355/urls.htm#BEIDIJCE
По-специално:
Забележка:
Когато използвате TNSNames с JDBC Thin драйвер, трябва да зададете свойството oracle.net.tns_admin към директорията, която съдържа вашия файл tnsnames.ora.
java -Doracle.net.tns_admin=%ORACLE_HOME%\network\admin
Както споменах, не съм проверил дали това всъщност работи.
Не мисля, че логиката "намерете действителната мрежова конфигурационна директория" е достъпна чрез някаква функция на Oracle. Ще трябва да го направите ръчно, както е посочено във вашия въпрос, или може би да разчитате на наличието на променливата на средата TNS_ADMIN. В този случай извикването на Java би било
java -Doracle.net.tns_admin=%TNS_ADMIN%