Переход со встроенной бд на mysql
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Переход со встроенной бд на mysql Expand / Collapse
Автор
Сообщение
05.06.2003 21:01
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 18.03.2005 20:48
Сообщ.: 136, Visits: 1 497
Помогите перейти. Вот что я сделал:
1. Перекопировал mysql-service.xml (стандартный в боссе есть), только в нем изменил непонятный //dell:3306 на //localhost:3306
2. В login-config.xml добавил:

<application-policy name = "MySqlDbRealm">
<authentication>
<login-module code = "org.jboss.resource.security.ConfiguredIdentityLoginModule" flag = "required">
<module-option name = "principal">myp</module-option>
<module-option name = "userName">myu</module-option>
<module-option name = "password">myw</module-option>
<module-option name = "managedConnectionFactoryName">jboss.jca:service=LocalTxCM,name=MySqlDS</module-option>
</login-module>
</authentication>
</application-policy>


3. Скачал mysql-connector-java-3.1.0-alpha-bin.jar и тыкал его и в default/lib и в общий /lib.
4. В своем приложении написал в jbosscmp-jdbc:

<jbosscmp-jdbc>
<defaults>
<datasource>java:/MySqlDS</datasource>
<datasource-mapping>mySQL</datasource-mapping>
<create-table>true</create-table>
<remove-table>true</remove-table>
<pk-constraint>true</pk-constraint>
<preferred-relation-mapping>foreign-key</preferred-relation-mapping>
</defaults>

</jbosscmp-jdbc>

Не помогает - ругается:
java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
Хотя этот класс в том яре есть! Помогите, пожалуйста.
Сообщ. #785032
05.06.2003 22:46
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 04.03.2005 18:40
Сообщ.: 1 019, Visits: 11 210
закинь в deploy dir драйвер. если уж там не заработает, то тогда с настройками глюки и будем дальше разбираться.
Сообщ. #785040
06.06.2003 9:45
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 18.03.2005 20:48
Сообщ.: 136, Visits: 1 497
Заработало.
Но теперь хочется разобраться как это я сделал, потому что мало что понял, делал по аналогии и наитию.
1. Что, все драйвера, либы класть прямо в deploy - это нормально?
2. Начнем пожалуй с самого главного - в боссе все построено на MBean. Объясните пожалуйста внятно что это такое? Все доки по этому поводу перерыл, сведений куча, но вот целостного понимания нет. Думаю без этого дальше разбираться рановато.
Сообщ. #785058
06.06.2003 11:51
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 04.03.2005 18:40
Сообщ.: 1 019, Visits: 11 210
http://java.sun.com/jmx

сильно не зачитывайся, а то потеряешься :)

в 2 словах - что-то наподобие сессионных бинов, но для системного мониторинга, управления и т.д.

например - у вас есть распределенный кеш. в кластере. вы хотите посмотреть, как он поживает - сколько хитов, сколько миссов. для этого не нужно писать свой клиент мониторинга. достаточно вывести все доступные операции в интерфейсе МБина и любая программа, работающая с JMX может теперь это делать. идем дальше - захотели изменить размер кеша? раньше вы могли бы хранить этот размер в файле пропертис. ага, значит нужен чаще всего рестарт, чтобы инициализировать кеш и прочитать их. с ЖМХ это не нужно. вы добираетесь до бина любым удобным способом (в ЖБоссе - модифицированная версия веб-консоли для ЖМХ), находите МБина вашего кеша и меняете ему параметр cacheSize.

именно поэтому в ЖБоссе можно все делать "на лету".

теперь про драйвер. я наверное, подозреваю, в чем дело. открываем дескриптор датасорса. сразу под узлом <server> мы видим <codebase>. можем и не видеть. не так важно.

значит вот, скажем, для SAPDB и драйвера, лежащего в деплой дир он будет такой:

<server>
<classpath codebase="." archives="sapdbc.jar"/>
...
</server>


если мы его закинем в дефолт/либ, то нужно указать путь к нему:

<server>
<classpath codebase="../lib" archives="sapdbc.jar"/>
...
</server>


так должно работать. тут уже не так важно, где он лежит. главное, что указано, что деплоить драйвер нужно ДО того, как деплоить сам датасорс.
Сообщ. #785072
06.06.2003 11:53
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 04.03.2005 18:40
Сообщ.: 1 019, Visits: 11 210
если заинтересуешься вдруг в будущем ЖМХ, то на жбосс.ру мелькала книжка "JMX in Action".

есть еще книжка по ЖМХ от самого ЖБосса и Marc Fleury, но она довольно сложно написана и не рекомендуется как первая.
Сообщ. #785073
06.06.2003 22:02
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 18.03.2005 20:48
Сообщ.: 136, Visits: 1 497
Бог с ним пока, с JMX, вернемся допустим к login-config:
- что такое service=LocalTxCM, часто упоминается?
- <login-module code = "org.jboss.resource.security ConfiguredIdentityLoginModule" это что еще?
Или лучше начать с mysql-service - но там еще больше "интересного".
Ну про все эти ConnectionPool, ManagedConnection и т.д. я почитал вообще, хотя синтаксис..в жизни не повторю! Но вот service=CachedConnectionManager, JaasSecurityManager, service=RARDeployer в доках чего то вообще не освещены толком, если вообще есть.
Сообщ. #785137
06.06.2003 22:19
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 04.03.2005 18:40
Сообщ.: 1 019, Visits: 11 210
мы должны определиться сначала, какая из них проблема и что мы решаем. XXXSecurityManager - это все классы архитектуры JBossSX - стр.291

они нужны, если нужны продвинутые фичи авторизации - типа даже подключить сканер пальца в сервер - мона :)

по умолчанию этот раздел вообще закомментирован. в ЖБоссе есть более простой модуль, на котором можно поучиться - XMLLoginConfig. ну а дальше можно и в базу, и в LDAP, и куда еще.

так с какой проблемой мы сейчас разбираемся? база забегала?
Сообщ. #785140
06.06.2003 22:25
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 04.03.2005 18:40
Сообщ.: 1 019, Visits: 11 210
service=LocalTxCM

это локальный транзакционный менеджер коннектов. штука оптимизированная для одной базы рядышком с сервером, и вообще системная вещь, тебе о ней беспокоиться не нужно. просто пиши, как в примере дескриптора.

для информации - есть другие менеджеры - например, распределенных транзакций, поддерживающий 2PC Protocol (2-Phase Commit). еще называется ХА (англ.) архитектура. случаи там отдельные, это узнаешь, если столкнешься с проблемами определенными. но нужно, чтобы драйвер держал ХА, а в мускл с этим туго, ой как туго со всем там.
Сообщ. #785142
06.06.2003 22:34
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 18.03.2005 20:48
Сообщ.: 136, Visits: 1 497
База бегает, все окей. Просто не хочется попкой быть - файл скопировал, хост подправил, в логине по аналогии с тем что было новый полиси через буфер сварганил - а ничего не понял, что пишется при переходе на другую базу в частности и при коннекте к сервесу (а в боссе это в виде сервисов реализовано насколько я понял) вообще.
RARDeployment - это кто?
Сообщ. #785145
06.06.2003 23:21
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 04.03.2005 18:40
Сообщ.: 1 019, Visits: 11 210
подробно у них деплоеры расписаны в доках, целая глава.

по расширению файла можно определить тип ресурса - это конвенция от Сан.

SAR - service archive
WSR - web service archive
RAR - resource adapter archive

ну, всем известные называть не буду :)
Сообщ. #785147
07.06.2003 18:35
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 18.03.2005 20:48
Сообщ.: 136, Visits: 1 497
Я вернул прежний (дефолтный) login-config и все равно работает. То есть то что я там писал в принципе необязательно. Но я там указывал и имя и пароль - где и как это используют (-ся)?
Сообщ. #785186
07.06.2003 18:38
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 04.03.2005 18:40
Сообщ.: 1 019, Visits: 11 210
это используется для маппинга реалмов. то есть физический маппинг логических юзеров приложения в реальных юзеров в среде, где бегают ЕЖБ. для обычной работы они и не нужны, но если встает задача разнести секьюрити, то тогда и начинаешь юзать эту вещь. подробно в доках.
Сообщ. #785187
07.06.2003 19:32
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 18.03.2005 20:48
Сообщ.: 136, Visits: 1 497
А что такое принципал и где это вообще пишется, указывается или что?
Сообщ. #785190
07.06.2003 19:38
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 04.03.2005 18:40
Сообщ.: 1 019, Visits: 11 210
один вопрос хлеще другого :) у тебя, наверное, талант задавать глобальные вопросы :) но это хорошо, нужные вопросы еще нужно уметь задавать :)

описывать подробно не могу, места нет. лезем в доку.

в 2 словах - принципал - это идентификатор юзера. это может быть строка в виде логина. в паре с принципалом идет credentials - это уже то, как вы себя идентифицируете. часто это просто пароль. а может быть и отсканированная сетчатка глаза.
Сообщ. #785191
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.

Время GMT +3:00, Сейчас 10:20