Сервер переехал на новый сайт http://www.oraclegis.com/blog. Здесь идет ретрансляция

четверг, 3 июля 2008 г.

При вот такой ошибке
javax.servlet.ServletException: ORA-00604: error occurred at recursive SQL level 1
ORA-12705: Cannot access NLS data files or invalid environment specified



Проблемы не с драйвером, а с самой XE.
Я, наверно, все возможные варианты перепробывал, и драйверов, и локалей, и параметров ОС.

Jdbc с XE работает только с англицкой локалью, это известная трабла, и во многих постах и статьях отмечена.

Вопрос был скорее в том, почему сервлеты BPEL-а не цепляют локаль из системы, если поставить языковые параметры ОС на английские. Ведь все jdbc-приложения (SQLDeveloper, Enterprise Manager 10g, irca - скрипты создания схем) в этом случае нормально работают с XE. И где, раз так, задать параметры локали для java вручную.

Нашел - в %ORACLE_HOME%\opmn\conf\opmn.xml (и ещё в opmn.xml.BPM и opmn.xml.ESB), есть параметры запуска инстансов сервера приложений. Туда и добавил параметры "-Duser.language=en -Duser.region=us". Если запуск осуществляется вручную, то те же самые параметры добавляем к вызову java-машины, например 

java -Duser.language=e -Duser.region=us myjavaclass 

Комментариев нет: