我们公司需要将 openfire 用于 xmpp 聊天应用程序,我们希望使用已经存在的用户表进行身份验证,而不是使用 openfire 中的 ofUser 表。我已经在我们的服务器上安装了 openfire 并将其配置为使用我们的 mysql 数据库并创建了必要的表。我正在尝试遵循此处找到的自定义数据库集成指南
但我无法让它工作。我的配置文件如下(表名略有变化):
<jdbcProvider>
<driver>com.mysql.jdbc.Driver</driver>
<connectionString>jdbc:mysql://localhost/fueledin_winkage?user=fueledin_winkage&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>
这是一种奇怪的设置,因为用户可以在使用电子邮件登录时更改他们的用户名。有人可以解释我可能做错了什么吗,我尝试使用用户表中的用户登录服务器,但没有运气。另外,在浏览器中运行设置向导后,我将配置脚本编辑为如上所示,现在每次我进入浏览器工具时,它都会要求我再次运行设置向导,即使我再次运行它仍然会询问然后。任何帮助提前感谢。