powered by Jive Software

Having trouble with custom database integration

This document provided on the website http://www.igniterealtime.org/builds/openfire/docs/latest/documentation/db-integ ration-guide.html talks about editing the openfire.xml file. However, a) the layout of the file seems out of date with that document and b) when I log into the admin console, it looks suspiciously to me like those settings are perhaps stored and retrieved from the DB in Server -> Server Manager -> System Properties. In fact, it appears that those properties just flatten the xml hierarchy?? Am I right? So should i be translating that document into appropriate settings through the web console and/or the DB directly?

So, some more info…

I’ve tried editing the openfire.xml as indicated and it appears to have no effect. Users that I created in the default database can still authenticate and users in the DB to which I linked, cannot. So it appears to have had no effect.

I’ve also tried editing the server properties directly as I suspected may be what I’m supposed to do, but that also had no effect. Even editing the property “provider.auth.className” didn’t do anything. I would’ve expected all auth to have been screwed up.

Running OS X 10.8.4, openfire 3.8.2. I’m of course restarting the server after making changes as well. Still stumped here.

Well, figured it all out on my own but hopefully the next person sees this and it saves them some headaches…

First, ignore references to the openfire.xml file.

Second, I could NOT get this to work running openfire from OS X (it was wonky running on there anyways…always failing to shutdown or start up etc.). Had to instead throw it on a Linux box and then it started working.

See http://community.igniterealtime.org/message/215127#215127 thread. Very close to what worked for me. He talks about needing to duplicate entries in the ofproperty table and the openfire.xml. That wasn’t necessary for me, just the entries in the db.

A couple of things that screwed me up:

  • Even though you’ve already provided jdbc settings for you database, you have to provide them again in jdbcProvider.driver and jdbcProvider.connectionString. Unlike the database setup you do at the beginning, you’ll need to embed your DB user credentials in that connection string (which for me was Oracle so it had to look like this: jdbc:oracle:thin:jive/jive@localhost:1521:xe (where jive/jive was the username / password). You’ll need to look at the documentation for your db engine I presume to get it right for you.

  • The document I reference above isn’t terribly clear. When you set the provider.user.className property it should be org.jivesoftware.openfire.user.JDBCUserProvider not org.jivesoftware.openfire.user.jdbcUserProvider

The document talks about setting an admin user once you’ve done this so you can still log into the admin console. I’ve not been successful at getting this to work. I’ve verified that chat sessions are using my custom authentication, but I’ve had to make all property changes at the database level since then. Either admin.authorizedUsernames doesn’t work as advertised or there’s more to it to get it to work than exists in that document.

FYI, to get the admin username to work, they need to look like so (as opposed to what the custom integration doc says):

admin.authorizedJIDs=admin@localhost,rn@localhost (where localhost is my server name obviously)

Re: How to integrate the custom database with the openfire 3.8.2

HIII

I am new to this technology please can anyone help me in this how to configure the custom database for user login access with my own existing db in stsep by step process…

Please help me to over come this …

Thanks in Advance…