Tomcat - Ubuntu - Wildfire 2.6.2 war installation

Hi,

I’‘ve run wildfire successfully with smack on my windows machine but now I’'m having trouble trying to deploy the wildfire war file through tomcat on a Ubuntu linux box.

Please bare with me, I’'m new to linux.

I’'ve downloaded the war file and placed in the webapps section and tomcat expanded it.

When I go to http://localhost:8080/wildfire/login.jsp. I get a 404 error.

I’'ve tried following the tutorial at http://www.jivesoftware.org/community/entry.jspa?externalID=431&categoryID=22

and by sifting through past posts, method #2 appears to be the best solution. How would I set the environment variable wildfireHome in a linux console?

Thank you in advance.

Hi,

I assume you did save it as wildfire.war and not as wildfire_2_6_2.war, otherwise the URL would be http://localhost:8080/wildfire_2_6_2/login.jsp.

You may copy the windows wildfireHome to linux (folders: embedded-db, conf, plugins, logs, resources and adjust conf/wildfire.xml) if you get error messages about missing files. I assume that you copy it to /home/wildfire/wildfireHome to explain the next step.

#2: -DwildfireHome=/home/wildfire/wildfireHome

You need to look at Tomcats catalina.sh script. It parses for additional JVM and Java parameters and adds them to the java call which launches Tomcat. I have no catalina script in front of me so I don’‘t know the exactly name, but it’'s all UPPERCASE.

You may either “hard” code it in this script

or add to your .profile or .bash_profile "export JAVA_???=

#2: -DwildfireHome=/home/wildfire/wildfireHome" if you start this Tomcat always manually and not using rc. scripts.

LG

Hi!

I have the same problem -> I get an 404 when launching http://IP:8180/wildfire/. http://IP:8180/jwchat works fine.

Unfortunately the link to the tutorial is broken, I would be glad if somebody could fix it.

tia

woifi

ps:

in my catalina log i found

INFO: Installing web application at context path /wildfire from URL file:/var/lib/tomcat5/webapps/wildfire

java.security.AccessControlException: access denied (java.util.PropertyPermission wildfireHome read)

at java.security.AccessControlContext.checkPermission(AccessControlContext.java:26 4)

at java.security.AccessController.checkPermission(AccessController.java:427)

at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)

at java.lang.SecurityManager.checkPropertyAccess(SecurityManager.java:1285)

at java.lang.System.getProperty(System.java:627)

at org.jivesoftware.wildfire.XMPPServer.locateWildfire(XMPPServer.java:662)

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

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

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

at org.jivesoftware.wildfire.XMPPContextListener.contextInitialized(XMPPContextLis tener.java:32)

at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:383 1)

at org.apache.catalina.core.StandardContext.start(StandardContext.java:4323)

at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)

at org.apache.catalina.core.ContainerBase.access$0(ContainerBase.java:121)

at org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.jav a:143)

at java.security.AccessController.doPrivileged(Native Method)

at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:805)

at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)

at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java :277)

at org.apache.catalina.core.StandardHost.install(StandardHost.java:832)

at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:625)

at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:431)

at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1083)

at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:327)

at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.j ava:119)

at org.apache.catalina.core.StandardHost.backgroundProcess(StandardHost.java:800)

at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChil dren(ContainerBase.java:1619)

at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChil dren(ContainerBase.java:1628)

at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(Contain erBase.java:1608)

at java.lang.Thread.run(Thread.java:595)

Critical Error! The home directory has not been configured,

which will prevent the application from working correctly.

/code

Above you say that the wildfirehome path has to be set in the startup script (in catalina.sh?). I put it in the start and run section, but it doesn’'t help. Here is my catalina.sh:

elif [ “$1” = “run” ]; then

shift

if [ “$1” = “-security” ] ; then

echo “Using Security Manager”

shift

exec “$_RUNJAVA” $JAVA_OPTS $CATALINA_OPTS \

-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath “$CLASSPATH” \

-Djava.security.manager \

-Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \

-Dcatalina.base="$CATALINA_BASE" \

-Dcatalina.home="$CATALINA_HOME" \

-Djava.io.tmpdir="$CATALINA_TMPDIR" \

-DwildfireHome="/usr/share/tomcat5/wildfire_src/target/war/wildfireHome"\

org.apache.catalina.startup.Bootstrap “$@” start

else

exec “$_RUNJAVA” $JAVA_OPTS $CATALINA_OPTS \

-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath “$CLASSPATH” \

-Dcatalina.base="$CATALINA_BASE" \

-Dcatalina.home="$CATALINA_HOME" \

-Djava.io.tmpdir="$CATALINA_TMPDIR" \

org.apache.catalina.startup.Bootstrap “$@” start

fi

elif [ “$1” = “start” ] ; then

shift

touch “$CATALINA_BASE”/logs/catalina.out

if [ “$1” = “-security” ] ; then

echo “Using Security Manager”

shift

“$_RUNJAVA” $JAVA_OPTS $CATALINA_OPTS \

-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath “$CLASSPATH” \

-Djava.security.manager \

-Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \

-Dcatalina.base="$CATALINA_BASE" \

-Dcatalina.home="$CATALINA_HOME" \

-Djava.io.tmpdir="$CATALINA_TMPDIR" \

-DwildfireHome="/usr/share/tomcat5/wildfire_src/target/war/wildfireHome"\

org.apache.catalina.startup.Bootstrap “$@” start \

“$CATALINA_BASE”/logs/catalina.out 2>&1 &

if [ ! -z “$CATALINA_PID” ]; then

echo $! > $CATALINA_PID

fi

…[/code]

I would be glad if anyone could give me hints.

bye

woifi

edit: now trying with 3.0.1

Message was edited by: woifi

In your /path/to/tomcat/webapps/wildfire/WEB-INF directory you need to create a folder named classes with the file wildfire_init.xml. This should be a text file with the following information in it:

[/code]

Your Wildfire home needs to have the plugins, resources, logs, and conf directories, and the plugins directory needs to have the admin directory removed. Then it should work fine.

Now that I’‘ve explained that much I hope it works…however it is probably a better idea to steer yourself away from a WAR deployment of Wildfire. This is a deprecated deployment option and will cause you a significant amount of work if you want to upgrade to and past 3.0.x. I know because I just had to switch. I definitely enjoy the ease of a WAR, but the new plugin architecture just doesn’'t work in that kind of deployment.