Custom Database Integration

Ark! Not working!

I’'m trying to integrate an external PhpBB Message Board with a Wildfire Server hosted locally, and am having no luck. Whenever I shut down the service, edit the wildfire.xml file and restart it, I end up back at the setup screen in the admin panel (which kinda defeats the purpose of all that editing )

Anything I’‘m doing wrong here? Chances are, I’‘ve missed something really stupid and Wildfire’‘s complaining, but I honestly can’'t spot the problem. Any help is appreciated.

wildfire.xml is below, with other files available on request.

Matt, aka TC

<?xml version="1.0" encoding="UTF-8" ?>

9090

9091

en

com.mysql.jdbc.Driver

jdbc:mysql://mysql.artemis-fowl.net/(database)?user=(username )&password=(password)

org.jivesoftware.wildfire.auth.JDBCAuthProvider

org.jivesoftware.wildfire.user.JDBCUserProvider

SELECT user_password FROM AFCForum_users WHERE username=?

MD5

SELECT username,user_email FROM AFCForum_users WHERE username=?

SELECT COUNT(*) FROM AFCForum_users

SELECT username FROM AFCForum_users

SELECT username FROM AFCForum_users WHERE

username

username

user_email

true

Hi Matt,

are you using Linux/Windows/MacOS and which packet did you install (zip/exe/rpm)?

Do you see errors in the log files? I wonder if Wildfire really uses the wildfire.xml file you did post below. Please make sure that http://server:9090/index.jsp displays the right “Wildfire Home:” directory.

LG

Using Windows SP2 coughhomeeditioncough (it’'s just a test machine running from home)

There are a huge about of errors in the error logs, yes. Do you need a copy?

And finally, it is DEFINATLY in the right directory.

TC

Hi,

the first error message will usually be fine.

If you can shutdown the server, backup and empty the logs directory and restart it the error log should be short and you could post it here.

LG

Sorry about the wait.

I’‘ve done at mentioned, and it runs out the error.log contains the following. I can’‘t make any sence of it whatsoever, would this help you at all in telling me what I’'m doing wrong here?

Cheers again.

error.log wrote:

2006.11.17 14:36:09 [org.jivesoftware.database.ConnectionPool.(ConnectionPool.java:62)

] JDBC driver value is null.

2006.11.17 14:36:10 [org.jivesoftware.util.JiveProperties.loadProperties(JiveProperties.java:280)

]

java.lang.NullPointerException

at java.lang.Class.forName0(Native Method)

at java.lang.Class.forName(Unknown Source)

at org.jivesoftware.util.ClassUtils.loadClass(ClassUtils.java:60)

at org.jivesoftware.util.ClassUtils.forName(ClassUtils.java:39)

at org.jivesoftware.database.ConnectionPool.(ConnectionPool.java:65)

at org.jivesoftware.database.DefaultConnectionProvider.start(DefaultConnectionProv ider.java:83)

at org.jivesoftware.database.DbConnectionManager.setConnectionProvider(DbConnectio nManager.java:441)

at org.jivesoftware.database.DbConnectionManager.getConnection(DbConnectionManager .java:84)

at org.jivesoftware.util.JiveProperties.loadProperties(JiveProperties.java:269)

at org.jivesoftware.util.JiveProperties.init(JiveProperties.java:67)

at org.jivesoftware.util.JiveProperties.(JiveProperties.java:49)

at org.jivesoftware.util.JiveProperties.getInstance(JiveProperties.java:43)

at org.jivesoftware.util.JiveGlobals.getProperty(JiveGlobals.java:524)

at org.jivesoftware.wildfire.XMPPServer.initialize(XMPPServer.java:287)

at org.jivesoftware.wildfire.XMPPServer.start(XMPPServer.java:365)

at org.jivesoftware.wildfire.XMPPServer.(XMPPServer.java:147)

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)

at java.lang.reflect.Constructor.newInstance(Unknown Source)

at java.lang.Class.newInstance0(Unknown Source)

at java.lang.Class.newInstance(Unknown Source)

at org.jivesoftware.wildfire.starter.ServerStarter.start(ServerStarter.java:93)

at org.jivesoftware.wildfire.starter.ServerStarter.main(ServerStarter.java:49)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)

at com.exe4j.runtime.WinLauncher.main(Unknown Source)

2006.11.17 14:36:10 [org.jivesoftware.database.DefaultConnectionProvider.getConnection(DefaultConne ctionProvider.java:68)

] Warning: DbConnectionDefaultPool.getConnection() was called before the internal pool has been initialized.

2006.11.17 14:36:10 [org.jivesoftware.database.DbConnectionManager.getConnection(DbConnectionManage r.java:92)

] WARNING: ConnectionManager.getConnection() failed to obtain a connection.

2006.11.17 14:36:10 [org.jivesoftware.wildfire.XMPPServer.verifyDataSource(XMPPServer.java:620)

] Database could not be accessed

java.lang.NullPointerException

at org.jivesoftware.wildfire.XMPPServer.verifyDataSource(XMPPServer.java:610)

at org.jivesoftware.wildfire.XMPPServer.start(XMPPServer.java:369)

at org.jivesoftware.wildfire.XMPPServer.(XMPPServer.java:147)

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)

at java.lang.reflect.Constructor.newInstance(Unknown Source)

at java.lang.Class.newInstance0(Unknown Source)

at java.lang.Class.newInstance(Unknown Source)

at org.jivesoftware.wildfire.starter.ServerStarter.start(ServerStarter.java:93)

at org.jivesoftware.wildfire.starter.ServerStarter.main(ServerStarter.java:49)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)

at com.exe4j.runtime.WinLauncher.main(Unknown Source)

2006.11.17 14:36:10 [org.jivesoftware.wildfire.XMPPServer.start(XMPPServer.java:405)

]

java.lang.IllegalArgumentException: java.lang.NullPointerException

at org.jivesoftware.wildfire.XMPPServer.verifyDataSource(XMPPServer.java:621)

at org.jivesoftware.wildfire.XMPPServer.start(XMPPServer.java:369)

at org.jivesoftware.wildfire.XMPPServer.(XMPPServer.java:147)

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)

at java.lang.reflect.Constructor.newInstance(Unknown Source)

at java.lang.Class.newInstance0(Unknown Source)

at java.lang.Class.newInstance(Unknown Source)

at org.jivesoftware.wildfire.starter.ServerStarter.start(ServerStarter.java:93)

at org.jivesoftware.wildfire.starter.ServerStarter.main(ServerStarter.java:49)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)

at com.exe4j.runtime.WinLauncher.main(Unknown Source)

Caused by: java.lang.NullPointerException

at org.jivesoftware.wildfire.XMPPServer.verifyDataSource(XMPPServer.java:610)

… 16 more

Hi Matt,

it seems that you did delete the connectionProvider. Wildfire does need a database to store the vCards etc. and this one is missing in the wildfire.xml you did post above. For me it looks like:

<connectionProvider>     <className>org.jivesoftware.database.EmbeddedConnectionProvider</className>   </connectionProvider>

while you may be using MySQL. So you must not remove it if you add an auth and a user provider.

LG

Aha! I see now! I’‘ll give it a shot tonight. Again, big thanks for this! I’'ll give you a heads up if it worked.

TC

Hi TC,

I’'m not interested in heads, the currency one pays here is points (:

While I’‘m sure that Gato will reach 3000 points before I do I’‘m quite sure that I’'ll reach 3000 posts before he does.

LG

Don’‘t worry my friend, I’'m quite aware of how it all works!

I just didn’‘t want to short change you if it did work by putting it in as Helpful, rather than Correct. But it seems to have done something (my SQL data seems to be incompatible though, blasted spaces and Capitals and whatnot), so I’'ll give you your 10 points.

I should be able to figure it out from here, so again, big thank you for your help.

And good luck beating Gato!

TC