powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Переключение DataSource в ADF
16 сообщений из 16, страница 1 из 1
Переключение DataSource в ADF
    #38085746
Oksana Palun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Использую JDeveloper 11g R2, коннект к Oracle
Есть необходимость работы на 2 схемы, т.е. 2 одинаковый инстанса с разными именами, одна используется для разработки, вторая рабочая. В приложении на стрнице логина необходимо указывать схему и далее работать с указанной схемой.
Нашла вот такой замечательный пример: http://andrejusb.blogspot.com/2012/08/sample-application-for-switching.html
НО... так НЕ работает, т.е. приложение видит схему, к которой я хочу подключиться, устанавливает ее енвиронменту, при вызове хранимых процедур правильно считывает имя подключения, НО отображает данные схемы по умолчанию. Т.е. я так понимаю, не уставливает этот коннект АМу.
Где я вижу проблему... в их примере есть такой класс: CustomADFBCDataControl, который я так и не нашла где и куда подключается, т.е. он нигде не вызывается. Может проблема в другом месте, если у кого-нить будут соображения, ткните плиз носом :)
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38085851
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет я для этих целей применяю макроимена.
И обязательно динпмическое создание.
У Меня запрос типа
String sql=select * from &shema.table where ....
sql=replace_shema("&shema","owner")
ViewObjectImpl vo=(ViewObjectImpl)application.createViewObjectFromQueryStmt(sqlname, sql);
Если будет именятся запрос в будующем обязательно
vo.setFullSqlMode(ViewObjectImpl.FULLSQL_MODE_AUGMENTATION);
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38086463
Oksana Palun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
irbis_al, динамическое создание это, конечно, вариант, но и так же должно работать... у других людей то работает как-то )))
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38087143
MOHAX777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oksana Palun,

Для подобной ситуации я использовал собственный EnvInfoProvider, в котором заменял свойство "Configuration.JDBC_DS_NAME", беря его из сессионной или bean-переменной.
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38087152
MOHAX777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S. Собственно, в статье Andrejus Baranovskis про это и пишет.
Под дебаггером в нужный участок кода попадаете? В bc4j.xcfg для нужной конфигурации свой EnvInfoProvider прописали? В databindings.cpx эта конфигурация указана?
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38087179
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oksana PalunИспользую JDeveloper 11g R2, коннект к Oracle
, НО отображает данные схемы по умолчанию. Т.е. я так понимаю, не уставливает этот коннект АМу.
Где я вижу проблему... в их примере есть такой класс: CustomADFBCDataControl, который я так и не нашла где и куда подключается, т.е. он нигде не вызывается. Может проблема в другом месте, если у кого-нить будут соображения, ткните плиз носом :)

А Попробуйте сделать resetview

Типа
resetview(vo) {
vo.reset();
vo.resetExecuted();
vo.resetSelectedAttributeDefs();
vo.clearCache();
vo.setWhereClause(null);
vo.setWhereClauseParams(null);
vo.getVariableManager().clearVariables();
vo.executeEmptyRowset;
}
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38087361
Oksana Palun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MOHAX777Под дебаггером в нужный участок кода попадаете?
да. В том то мне и непонятка, что в EnvInfoProvider он попадает, JDBC_DS_NAME устанавливает, но получается что он его не использует. И я удалила коннект к той схеме, к кторой хочу подключиться и он не ругнулся, т.е. получается, что он даже не пытается использовать указанный DataSource
MOHAX777В bc4j.xcfg для нужной конфигурации свой EnvInfoProvider прописали?
да
MOHAX777В databindings.cpx эта конфигурация указана?
неее уверена, нужный DataControl подключен, еще что-то нужно подключить?
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38087362
Oksana Palun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А Попробуйте сделать resetview

Типа
resetview(vo) {
vo.reset();
vo.resetExecuted();
vo.resetSelectedAttributeDefs();
vo.clearCache();
vo.setWhereClause(null);
vo.setWhereClauseParams(null);
vo.getVariableManager().clearVariables();
vo.executeEmptyRowset;
}[/quot]
Где это лучше сделать? В %VO%Impl?
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38087379
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oksana PalunА Попробуйте сделать resetview

Типа
resetview(vo) {
vo.reset();
vo.resetExecuted();
vo.resetSelectedAttributeDefs();
vo.clearCache();
vo.setWhereClause(null);
vo.setWhereClauseParams(null);
vo.getVariableManager().clearVariables();
vo.executeEmptyRowset;
}
Где это лучше сделать? В %VO%Impl?


Ну в свой код...Вам же лучше знать...или у вас сам исходный пример что по ссылке не работает...?
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38087433
Oksana Palun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
irbis_alНу в свой код...Вам же лучше знать...или у вас сам исходный пример что по ссылке не работает...?
Не ну в ADF все коды, в принципе, похожи, структура проектов то одна..... Я спрашиваю где это вызвать, чтобы точно сработало, вот например: если я вызову в классе логина, то там еще рано, установка схемы еще не произошла, при отображении мейна уже поздно, где-то ж нужен листенер "в том самом" месте :)
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38087458
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oksana Palun,

М...Ну reset нужно вызвать перед vo.executeQuery...
Некоторая проблема в том,что ADF глубоко интегрирована и сама вызывает этот метод...для этого надо управляющим бином отслеживать(или другим доступным способом)...и тут только Вы знаете логику приложения.
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38090268
MOHAX777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oksana PalunMOHAX777В databindings.cpx эта конфигурация указана?
неее уверена, нужный DataControl подключен, еще что-то нужно подключить?

у AM может же несколько конфигураций быть, в databindings.cpx в разделе dataControlUsages для каждого AM указывается, какая конфигурация используется. У вас указана конфигурация, в которой используется кастомный EnvInfoProvider?
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38090448
Oksana Palun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MOHAX777Oksana Palunпропущено...

неее уверена, нужный DataControl подключен, еще что-то нужно подключить?

у AM может же несколько конфигураций быть, в databindings.cpx в разделе dataControlUsages для каждого AM указывается, какая конфигурация используется. У вас указана конфигурация, в которой используется кастомный EnvInfoProvider?
Да, указана.
Такое ощущение, что где-то перезатирается енвиронмент. Он заходит в провайдер, делает put нужного DS, выходит и когда заходит в след раз, то видит тот, что указан по умолчанию в entities....я думаю, что либо у меня DS как-то некорреткно настроены, либо настройки в самом проекте где-то хромают... не знаю куда еще смотерть. Это JD 11g R2.
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38092209
MOHAX777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oksana PalunMOHAX777пропущено...


у AM может же несколько конфигураций быть, в databindings.cpx в разделе dataControlUsages для каждого AM указывается, какая конфигурация используется. У вас указана конфигурация, в которой используется кастомный EnvInfoProvider?
Да, указана.
Такое ощущение, что где-то перезатирается енвиронмент. Он заходит в провайдер, делает put нужного DS, выходит и когда заходит в след раз, то видит тот, что указан по умолчанию в entities....я думаю, что либо у меня DS как-то некорреткно настроены, либо настройки в самом проекте где-то хромают... не знаю куда еще смотерть. Это JD 11g R2.

кхм, у меня "на лету" переключение не нужно было - только при создании AM.
Сделал тестовое приложение. Если отключить pooling в конфигурации AM, то начинает работать переключение DS "на лету". Т.е. отсюда делаем вывод - DS задаётся на этапе создания AM и после помещения его в пул изменить DS с помощью кастомного EnvInfoProvider не получится (ну или надо дёргать какие-то дополнительные методы для переподключения в AM).
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38092242
MOHAX777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S. Возможно, поможет использование jbo.doconnectionpooling = true и jbo.txn.disconnect_level = 1 в конфигурации AM, но там свои особенности:
http://andrejusb.blogspot.ru/2011/10/adf-bc-tuning-with-do-connection.html
...
Рейтинг: 0 / 0
Переключение DataSource в ADF
    #38092426
Oksana Palun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MOHAX777кхм, у меня "на лету" переключение не нужно было - только при создании AM.
Сделал тестовое приложение. Если отключить pooling в конфигурации AM, то начинает работать переключение DS "на лету". Т.е. отсюда делаем вывод - DS задаётся на этапе создания AM и после помещения его в пул изменить DS с помощью кастомного EnvInfoProvider не получится (ну или надо дёргать какие-то дополнительные методы для переподключения в AM).
Ок, низя, значит низя....при указании DS до создания AM работает, что правда придецца менять логику, но хоть так. НО тут тоже есть так сказать проблемка.... при каждом запросе на сервере он создает новый коннект, т.е. получается, пользователей 1 шт, а коннектов на него создается миллион штук, это не есть гуд, т.к. место на сервере очень ограничено... хотелось бы, чтобы на один DS был 1 коннект и он использовался при всех запросах. Фловзы настроены на Use existing transaction if possible. Где моя ошибочка?
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Переключение DataSource в ADF
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]