2012-04-30 6 views
0

Наша компания должна использовать openfire для приложения xmpp chat, и мы хотели бы использовать уже существующую таблицу пользователей для аутентификации, а не таблицу ofUser, которая является частью openfire. Я уже установил openfire на нашем сервере и настроил его для использования нашей базы данных mysql и создал необходимые таблицы. Я пытаюсь выполнить Руководство по интеграции пользовательской базы данных найдено hereopenfire external user auth

но я не могу заставить его работать. Мой файл конфигурации ниже (с именами таблиц изменились незначительно):

<jdbcProvider> 
<driver>com.mysql.jdbc.Driver</driver> 
<connectionString>jdbc:mysql://localhost/fueledin_winkage?user=fueledin_winkage&amp;password=845Fulton</connectionString> 
</jdbcProvider> 
<provider> 
    <auth> 
    <className>org.jivesoftware.openfire.auth.JDBCAuthProvider</className> 
    </auth> 
    <user> 
    <className>org.jivesoftware.openfire.user.JDBCUserProvider</className> 
    </user> 
</provider> 
<jdbcAuthProvider> 
    <passwordSQL>SELECT password FROM users WHERE email=?</passwordSQL> 
    <passwordType>md5</passwordType> 
</jdbcAuthProvider> 
<jdbcUserProvider> 
    <loadUserSQL>SELECT email,email FROM users WHERE email=?</loadUserSQL> 
    <userCountSQL>SELECT COUNT(*) FROM users</userCountSQL> 
    <allUsersSQL>SELECT email FROM users</allUsersSQL> 
    <searchSQL>SELECT email FROM users WHERE</searchSQL> 
    <usernameField>email</usernameField> 
    <nameField>email</nameField> 
    <emailField>email</emailField> 
</jdbcUserProvider> 
<setup>true</setup> 

Это своего рода странные настройки, потому что пользователи могут изменить свое имя, когда так электронная почта используется для входа в систему. Может кто-то объяснить, что я могу делать неправильно, я попытался войти на сервер с пользователями в нашей таблице пользователей, но не повезло. Кроме того, после того, как я запустил мастер установки в браузере, я отредактировал сценарий конфигурации, чтобы он выглядел выше, и теперь каждый раз, когда я иду в инструмент браузера, он просит меня снова запустить мастер установки, даже если я запустил его снова, он все еще спрашивает после этого. Любая помощь приветствуется заранее.

+0

Просто хочу знать, у него это началось. Я хотел бы знать, как это работает, так как я столкнулся с такой же точной проблемой. Cheers ... – Jeremy

ответ

3

Вы должны установить параметры в интерфейсе администратора openfire. это сделает работу за вас.

Если вы хотите сделать это в базе данных, это таблица ofProperty;)

Edit:

Как это:

Изменить все XML-узлы на что-то вроде node.subnode как имена свойств в свойствах системы (в диспетчере сервера).

.: например

<provider> 
    <auth> 
    <className>org.jivesoftware.openfire.auth.JDBCAuthProvider</className> 
    </auth> 
    <user> 
    <className>org.jivesoftware.openfire.user.JDBCUserProvider</className> 
    </user> 
</provider> 

будет

provider.auth.className 
provider.user.className 
значение

Свойство являются одинаковыми, так что, например, значение для provider.auth.className - org.jivesoftware.openfire.auth.JDBCAuthProvider, а значение для provider.user.className - org.jivesoftware.openfire.user.JDBCUserProvider

+0

Вы могли бы описать это с более подробной информацией? Спасибо – ppaulojr

+0

уверен;) надеюсь, что это поможет ... – Severin