powered by Jive Software

Minor annoying problem with installation on Debian (now turning major)

Following the instructions here http://www.jivesoftware.org/builds/wildfire/docs/latest/documentation/install-gu ide.html#unix

When calling “/etc/init.d/wildfired start” I got the error “sh: line 1: ./wildfire: No such file or directory”. I then changed in wildfired the line

CMD="./wildfire $1"

to CMD="./wildfire.sh $1"

This produced “sh: line 1: ./wildfire.sh: Permission denied”

After calling

  1. chmod +x /usr/bin/wildfire/bin/wildfire.sh

The wildfired script does run, but it dumps all output to the command line. That’‘s annoying. Can access the admin console, and configured wildfire through that. It’'s an adapted wildfire 3.1.1 (so I can use firebird database).

Edit: It also seems impossible to stop wildfire now, although it reports of not being running, the admin console is responding.

Some errors I get:

  1. /etc/init.d/wildfired stop

log4j:ERROR setFile(null,true) call failed.

java.io.FileNotFoundException: log/test.log (No such file or directory)

at java.io.FileOutputStream.openAppend(Native Method)

at java.io.FileOutputStream.(XMPPServer.java:147)

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

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessor Impl.java:39)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructor AccessorImpl.java:27)

at java.lang.reflect.Constructor.newInstance(Constructor.java:494)

at java.lang.Class.newInstance0(Class.java:350)

at java.lang.Class.newInstance(Class.java:303)

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

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

manzano135:~/dist# Error starting XMPP listener on port 5222: Address already in use

Error starting SSL XMPP listener on port 5223: Address already in use

Wildfire 3.1.1

manzano135:~/dist# Error starting admin console: Multiple exceptions

manzano135:~/dist# /etc/init.d/wildfired

Usage /etc/init.d/wildfired {start|stop|restart|status}

manzano135:~/dist# /etc/init.d/wildfired status

wildfire is not running

Message was edited by: Op3racional

Sorry for replying to myself.

Seems some problmes were caused by me trying to install a plugin I wrote myself (it works fine on 2.5.1 on windows).

Upon starting the server (I was able to halt it through the admin console), I get this errors:

  1. /etc/init.d/wildfired start

log4j:ERROR setFile(null,true) call failed.

java.io.FileNotFoundException: log/test.log (No such file or directory)

at java.io.FileOutputStream.openAppend(Native Method)

at java.io.FileOutputStream.(XMPPServer.java:147)

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

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessor Impl.java:39)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructor AccessorImpl.java:27)

at java.lang.reflect.Constructor.newInstance(Constructor.java:494)

at java.lang.Class.newInstance0(Class.java:350)

at java.lang.Class.newInstance(Class.java:303)

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

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

manzano135:/usr/bin/wildfire# Wildfire 3.1.1

Admin console listening at https://op3racional.eu:9091

Any help is appreciated.

Hi Sabine,

Looks like two things are going on. One, you there appears the there is an instance of Wildfire that is already running when you tried to start another one. And two, does the user that you’‘re using start Wildfire have write privilages to the wildfire directory? You can see from the error messages that Wildfire is trying to write the log files to a wildfire/log directory which doesn’'t exist.

Thanks,

Ryan

Yes, the two instances where from when I couldn’'t stop the server any other way then through the console. I recompiled the plugin and it was accepted.

I’'m curious about the “log/test.log” error. The directory structure is the following:

total 24

drwxr-xr-x 3 jive jive 4096 Apr 22 2009 bin

drwxr-xr-x 2 jive jive 4096 Feb 15 11:46 conf

drwxr-xr-x 2 jive jive 4096 Jan 17 12:50 lib

drwxr-xr-x 2 jive jive 4096 Feb 15 11:06 logs

drwxr-xr-x 4 jive jive 4096 Feb 15 12:57 plugins

drwxr-xr-x 5 jive jive 4096 Apr 22 2009 resources

Indeed, no directory called “log”… Now, all I changed in the source code were some field names in sql queries.

Creating a subdirectory log with an empty test.log (all owned by jive:jive) does not fix the error. Also, why does it try to start an instance, when I just told it to stop.

manzano135:/usr/bin/wildfire# /etc/init.d/wildfired stop

log4j:ERROR setFile(null,true) call failed.

java.io.FileNotFoundException: log/test.log (No such file or directory)

at java.io.FileOutputStream.openAppend(Native Method)

at java.io.FileOutputStream.(XMPPServer.java:147)

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

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessor Impl.java:39)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructor AccessorImpl.java:27)

at java.lang.reflect.Constructor.newInstance(Constructor.java:494)

at java.lang.Class.newInstance0(Class.java:350)

at java.lang.Class.newInstance(Class.java:303)

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

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

manzano135:/usr/bin/wildfire# Error starting XMPP listener on port 5222: Address already in use

Error starting SSL XMPP listener on port 5223: Address already in use

Wildfire 3.1.1

Error starting admin console: Multiple exceptions

manzano135:/usr/bin/wildfire# /etc/init.d/wildfired status

wildfire is not running

The admin console is responding at this time.

Hi Sabine,

The “log/test.log” error is a strange one, it looks like the firebird driver might be the culprit. Is there a way to configure the logging of the firebird driver? I’‘m wondering too if you might have a hung process somewhere so that’‘s why you’'re seeing the “Error starting XMPP listener on port 5222: Address already in use” error.

Thanks,

Ryan

Yeah, reading all those lines again, the source is the firbird jdbc driver - it uses log4j.

I installed the latest version of Jaybird and redid the wildfire setup.

Here’'s what I get then (was doing the setup, hence the console restart)

manzano135:~/jaybird# /etc/init.d/wildfired start

Wildfire 3.1.1

manzano135:~/jaybird#

manzano135:~/jaybird# Admin console listening at https://127.0.0.1:9091

manzano135:~/jaybird# Restarting admin console…

Admin console listening at https://op3racional.eu:9091

manzano135:~/jaybird# /etc/init.d/wildfired status

wildfire is not running

manzano135:~/jaybird# /etc/init.d/wildfired stop

manzano135:~/jaybird# Error starting XMPP listener on port 5222: Address already in use

Error starting SSL XMPP listener on port 5223: Address already in use

Wildfire 3.1.1

Error starting admin console: Multiple exceptions

Still can’‘t stop the server from the command line. But at least it’'s not throwing those exceptions (make sure to get latest versions, duh).

IIRC, the script is supposed to write the output into nohup.out in the jive home directory. Please help with that.

The main thing is the wildfired script not being able to stop the process at all. Now I have wildfire listen only on 5223, because the other port is apparently being used by a “hung” process. Which, I can’'t identify, because everything is “java”.

Edit:

I stopped wildfire from the admin console, and killed all java processes, yet netstat shows the 5222 port being listened on.

Message was edited by: Op3racional

I fixed the 5222 port being occupied (misconfigured apache).

But can anyone please take a look at wildfires scripts for these two issues:

  • can’'t stop wildfire with the “wildfired” script, behaves somewhat like a restart attempt

  • dumping output on the shell when control has already been returned

EDIT: to help others, use “lsof -i :5222” to see which process has the port open.

I see script problems continue in the latest versions.