bin.jclusterd Maven / Gradle / Ivy
#!/bin/sh
# ---------------------------------------------------------------------------
# JOnAS: Java(TM) Open Application Server
# Copyright (C) 1999-2008 Bull S.A.S.
# Contact: [email protected]
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
# USA
#
# Initial developer(s): Philippe Durieux
# ---------------------------------------------------------------------------
# $Id: jclusterd 19055 2009-11-26 15:50:12Z alitokmen $
# ---------------------------------------------------------------------------
# -----------------------------------------------------------------------
# Compute JONAS_ROOT in case it has not been set.
# -----------------------------------------------------------------------
if [ ! -d $JONAS_ROOT/lib ]; then
savewd=`pwd`
cd `dirname $0`
zdir=`pwd`
cd $savewd
zfqn=$zdir/`basename "$0"`
JONAS_ROOT=`dirname $zdir`
JONAS_ROOT=`dirname $JONAS_ROOT`
export JONAS_ROOT
fi
# Set CLASSPATH and JONAS_BASE
. $JONAS_ROOT/bin/setenv
JONAS_OPTS="\
-Djonas.root=$JONAS_ROOT \
-Djonas.root=$JONAS_ROOT \
-Djonas.base=$JONAS_BASE \
-Djava.awt.headless=true \
-Djava.security.auth.login.config=$JONAS_BASE/conf/jaas.config \
-Djava.endorsed.dirs=$JONAS_ROOT/lib/endorsed \
-Dorg.omg.CORBA.ORBClass=org.jacorb.orb.ORB \
-Dorg.omg.CORBA.ORBSingletonClass=org.jacorb.orb.ORBSingleton \
-Dorg.omg.PortableInterceptor.ORBInitializerClass.standard_init=org.jacorb.orb.standardInterceptors.IORInterceptorInitializer \
-Djavax.rmi.CORBA.PortableRemoteObjectClass=org.ow2.carol.rmi.multi.MultiPRODelegate \
-Djava.naming.factory.initial=org.ow2.carol.jndi.spi.MultiOrbInitialContextFactory \
-Djavax.rmi.CORBA.UtilClass=org.ow2.carol.util.delegate.UtilDelegateImpl \
"
# ---------------------------------------------
# Get arguments
# ---------------------------------------------
ARGS=
DEBUG_OPTS=
MODE=start
USERNAME=
PASSWORD=
while [ "$#" -gt 0 ]
do case "$1" in
start)
MODE=start
;;
stop)
MODE=stop
;;
-cp)
shift
JONAS_CLASSPATH=$JONAS_CLASSPATH$SPS$1
;;
-D*)
JAVA_OPTS="$JAVA_OPTS $1"
;;
-security)
# Use security manager
JAVA_OPTS="$JAVA_OPTS -Djava.security.manager -Djava.security.policy=$JONAS_BASE/conf/java.policy"
;;
-debug)
shift
# $1=-p
if [ "$1" != "-p" ]; then
echo "-debug mode need a following \"-p \""
exit 1
fi
shift
DEBUG_PORT=$1
DEBUG_SUSPEND=n
if [ "$2" = "-s" ]; then
shift
shift
DEBUG_SUSPEND=$1
fi
echo "Debug Info :"
echo " listening on port : $DEBUG_PORT"
echo " suspend mode : $DEBUG_SUSPEND"
DEBUG_OPTS=" -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,address=$DEBUG_PORT,suspend=$DEBUG_SUSPEND"
;;
-username)
shift
USERNAME="-username $1"
;;
-password)
shift
PASSWORD="-password $1"
;;
*)
# All other args are passed "as is" to the java program
ARGS="$ARGS $1"
;;
esac
shift
done
# ---------------------------------------------
# Check mode
# ---------------------------------------------
case "$MODE" in
start)
CLASS_TO_RUN=org.ow2.jonas.cluster.daemon.ClusterDaemon
;;
stop)
CLASS_TO_RUN="org.ow2.jonas.cluster.daemon.ClusterDaemonAdmin -stop"
;;
*)
echo "Usage: jclusterd start|stop [options]"
echo "Debug mode : jclusterd start -debug -p [-s ] [options]"
exit 1
;;
esac
# ---------------------------------------------
# Set tomcat base directory
# ---------------------------------------------
if [ -n "$CATALINA_HOME" ]
then
JONAS_OPTS="$JONAS_OPTS -Dcatalina.home=$CATALINA_HOME"
fi
if [ -n "$CATALINA_BASE" ]
then
JONAS_OPTS="$JONAS_OPTS -Dcatalina.base=$CATALINA_BASE"
fi
# ---------------------------------------------
# Set jetty home directory
# ---------------------------------------------
if [ -n "$JETTY_HOME" ]
then
JONAS_OPTS="$JONAS_OPTS -Djetty.home=$JETTY_HOME"
fi
# update CLASSPATH
JONAS_CLASSPATH=$JONAS_CLASSPATH$SPS$JONAS_ROOT/lib/bootstrap/client-bootstrap.jar$SPS$JONAS_ROOT/lib/jonas-cluster-daemon.jar$SPS$JONAS_ROOT/lib/client.jar
# ---------------------------------------------
# Run java command
# ---------------------------------------------
$JAVA -cp $JONAS_CLASSPATH $JAVA_OPTS $DEBUG_OPTS $JONAS_OPTS org.ow2.jonas.client.boot.Bootstrap $CLASS_TO_RUN $ARGS $USERNAME $PASSWORD
© 2015 - 2025 Weber Informatics LLC | Privacy Policy