Wolfgang,
I do not see any errors in the startup script being logged anymore, but apparently there is still is a difference in the way the environment for ServiceMix is set up on AIX.
Can you try to uncomment the echo command right after # Execute the Java Virtual Machinein the ServiceMix 3.0 and ServiceMix 3.1 script and post the resulting information back?
Let's hope we find an indication of what is different in both scripts there...
Gert If you have the time, ** bebop01 wrote:
Gert, The result of the test is the following: [EMAIL PROTECTED] java version "1.5.0" Java(TM) 2 Runtime Environment, Standard Edition (build pap32devifx-20061013 (ifix 110617: SR3 + 109092)) IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 AIX ppc-32 j9vmap3223ifx-20061013 (JIT enabled) J9VM - 20061012_08722_bHdSMR JIT - 20060908_1811ifx1_r8 GC - 20060906_AA) JCL - 20061002 Starting Apache ServiceMix ESB: 3.1-incubating-SNAPSHOT Loading Apache ServiceMix from servicemix.xml on the CLASSPATH Caught: org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource [activemq.xml]; nested exception is java.lang.ClassCircularityError org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource [activemq.xml]; nested exception is java.lang.ClassCircularityError Caused by: java.lang.ClassCircularityError at java.lang.ClassLoader.defineClassImpl(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:223) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:148) at java.net.URLClassLoader.defineClass(URLClassLoader.java:556) at java.net.URLClassLoader.access$400(URLClassLoader.java:119) at java.net.URLClassLoader$ClassFinder.run(URLClassLoader.java:961) at java.security.AccessController.doPrivileged(AccessController.java:275) at java.net.URLClassLoader.findClass(URLClassLoader.java:487) at java.lang.ClassLoader.loadClass(ClassLoader.java:606) at org.codehaus.classworlds.RealmClassLoader.loadClassDirect(RealmClassLoader.java:195) at org.codehaus.classworlds.DefaultClassRealm.loadClassDirect(DefaultClassRealm.java:412) at org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:376) at org.codehaus.classworlds.RealmClassLoader.loadClass(RealmClassLoader.java:214) at java.lang.ClassLoader.loadClass(ClassLoader.java:563) at java.lang.J9VMInternals.verifyImpl(Native Method) at java.lang.J9VMInternals.verify(J9VMInternals.java:88) at java.lang.J9VMInternals.verify(J9VMInternals.java:57) at java.lang.ClassLoader.resolveClass(ClassLoader.java:628) at java.lang.ClassLoader.loadClass(ClassLoader.java:612) at org.codehaus.classworlds.RealmClassLoader.loadClassDirect(RealmClassLoader.java:195) at org.codehaus.classworlds.DefaultClassRealm.loadClassDirect(DefaultClassRealm.java:412) at org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:376) at org.codehaus.classworlds.RealmClassLoader.loadClass(RealmClassLoader.java:214) at java.lang.ClassLoader.loadClass(ClassLoader.java:563) at java.lang.ClassLoader.defineClassImpl(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:223) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:148) at java.net.URLClassLoader.defineClass(URLClassLoader.java:556) at java.net.URLClassLoader.access$400(URLClassLoader.java:119) at java.net.URLClassLoader$ClassFinder.run(URLClassLoader.java:961) at java.security.AccessController.doPrivileged(AccessController.java:275) at java.net.URLClassLoader.findClass(URLClassLoader.java:487) at java.lang.ClassLoader.loadClass(ClassLoader.java:606) at org.codehaus.classworlds.RealmClassLoader.loadClassDirect(RealmClassLoader.java:195) at org.codehaus.classworlds.DefaultClassRealm.loadClassDirect(DefaultClassRealm.java:412) at org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:376) at org.codehaus.classworlds.RealmClassLoader.loadClass(RealmClassLoader.java:214) at java.lang.ClassLoader.loadClass(ClassLoader.java:563) at java.lang.J9VMInternals.verifyImpl(Native Method) at java.lang.J9VMInternals.verify(J9VMInternals.java:88) at java.lang.J9VMInternals.verify(J9VMInternals.java:57) at java.lang.ClassLoader.resolveClass(ClassLoader.java:628) at java.lang.ClassLoader.loadClass(ClassLoader.java:612) at org.codehaus.classworlds.RealmClassLoader.loadClassDirect(RealmClassLoader.java:195) at org.codehaus.classworlds.DefaultClassRealm.loadClassDirect(DefaultClassRealm.java:412) at org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:376) at org.codehaus.classworlds.RealmClassLoader.loadClass(RealmClassLoader.java:214) at java.lang.ClassLoader.loadClass(ClassLoader.java:563) at java.lang.J9VMInternals.verifyImpl(Native Method) at java.lang.J9VMInternals.verify(J9VMInternals.java:88) at java.lang.J9VMInternals.verify(J9VMInternals.java:57) at java.lang.ClassLoader.resolveClass(ClassLoader.java:628) at java.lang.ClassLoader.loadClass(ClassLoader.java:612) at org.codehaus.classworlds.RealmClassLoader.loadClassDirect(RealmClassLoader.java:195) at org.codehaus.classworlds.DefaultClassRealm.loadClassDirect(DefaultClassRealm.java:412) at org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:376) at org.codehaus.classworlds.RealmClassLoader.loadClass(RealmClassLoader.java:214) at java.lang.ClassLoader.loadClass(ClassLoader.java:563) at java.lang.J9VMInternals.verifyImpl(Native Method) at java.lang.J9VMInternals.verify(J9VMInternals.java:59) at java.lang.ClassLoader.resolveClass(ClassLoader.java:628) at java.lang.ClassLoader.loadClass(ClassLoader.java:612) at org.codehaus.classworlds.RealmClassLoader.loadClassDirect(RealmClassLoader.java:195) at org.codehaus.classworlds.DefaultClassRealm.loadClassDirect(DefaultClassRealm.java:412) at org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:376) at org.codehaus.classworlds.RealmClassLoader.loadClass(RealmClassLoader.java:214) at java.lang.ClassLoader.loadClass(ClassLoader.java:563) at java.lang.J9VMInternals.verifyImpl(Native Method) at java.lang.J9VMInternals.verify(J9VMInternals.java:59) at java.lang.ClassLoader.resolveClass(ClassLoader.java:628) at java.lang.ClassLoader.loadClass(ClassLoader.java:612) at org.codehaus.classworlds.RealmClassLoader.loadClassDirect(RealmClassLoader.java:195) at org.codehaus.classworlds.DefaultClassRealm.loadClassDirect(DefaultClassRealm.java:412) at org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:376) at org.codehaus.classworlds.RealmClassLoader.loadClass(RealmClassLoader.java:214) at java.lang.ClassLoader.loadClass(ClassLoader.java:563) at java.lang.J9VMInternals.verifyImpl(Native Method) at java.lang.J9VMInternals.verify(J9VMInternals.java:59) at java.lang.ClassLoader.resolveClass(ClassLoader.java:628) at java.lang.ClassLoader.loadClass(ClassLoader.java:612) at org.codehaus.classworlds.RealmClassLoader.loadClassDirect(RealmClassLoader.java:195) at org.codehaus.classworlds.DefaultClassRealm.loadClassDirect(DefaultClassRealm.java:412) at org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:376) at org.codehaus.classworlds.RealmClassLoader.loadClass(RealmClassLoader.java:214) at java.lang.ClassLoader.loadClass(ClassLoader.java:563) at java.lang.ClassLoader.defineClassImpl(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:223) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:148) at java.net.URLClassLoader.defineClass(URLClassLoader.java:556) at java.net.URLClassLoader.access$400(URLClassLoader.java:119) at java.net.URLClassLoader$ClassFinder.run(URLClassLoader.java:961) at java.security.AccessController.doPrivileged(AccessController.java:275) at java.net.URLClassLoader.findClass(URLClassLoader.java:487) at java.lang.ClassLoader.loadClass(ClassLoader.java:606) at org.codehaus.classworlds.RealmClassLoader.loadClassDirect(RealmClassLoader.java:195) at org.codehaus.classworlds.DefaultClassRealm.loadClassDirect(DefaultClassRealm.java:412) at org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:376) at org.codehaus.classworlds.RealmClassLoader.loadClass(RealmClassLoader.java:214) at java.lang.ClassLoader.loadClass(ClassLoader.java:563) at org.apache.xbean.spring.context.v2c.XBeanQNameHelper.loadClass(XBeanQNameHelper.java:102) at org.apache.xbean.spring.context.v2c.XBeanQNameHelper.getBeanInfo(XBeanQNameHelper.java:72) at org.apache.xbean.spring.context.v2c.XBeanQNameHelper.coerceNamespaceAwarePropertyValues(XBeanQNameHelper.java:54) at org.apache.xbean.spring.context.v2c.XBeanBeanDefinitionParserDelegate.parseBeanDefinitionElement(XBeanBeanDefinitionParserDelegate.java:63) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseBeanDefinitionElement(BeanDefinitionParserDelegate.java:421) at org.apache.xbean.spring.context.v2c.XBeanNamespaceHandler.parseBeanFromExtensionElement(XBeanNamespaceHandler.java:208) at org.apache.xbean.spring.context.v2c.XBeanNamespaceHandler.parseBeanFromExtensionElement(XBeanNamespaceHandler.java:256) at org.apache.xbean.spring.context.v2c.XBeanNamespaceHandler.parse(XBeanNamespaceHandler.java:152) at org.apache.xbean.spring.context.v2.XBeanNamespaceHandler.parse(XBeanNamespaceHandler.java:49) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1147) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1137) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:143) at org.apache.xbean.spring.context.v2.XBeanBeanDefinitionDocumentReader.parseBeanDefinitions(XBeanBeanDefinitionDocumentReader.java:63) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:88) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:499) at org.apache.xbean.spring.context.v2.XBeanXmlBeanDefinitionReader.registerBeanDefinitions(XBeanXmlBeanDefinitionReader.java:79) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:407) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:357) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:126) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:142) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.importBeanDefinitionResource(DefaultBeanDefinitionDocumentReader.java:185) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseDefaultElement(DefaultBeanDefinitionDocumentReader.java:155) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:140) at org.apache.xbean.spring.context.v2.XBeanBeanDefinitionDocumentReader.parseBeanDefinitions(XBeanBeanDefinitionDocumentReader.java:63) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:88) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:499) at org.apache.xbean.spring.context.v2.XBeanXmlBeanDefinitionReader.registerBeanDefinitions(XBeanXmlBeanDefinitionReader.java:79) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:407) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:357) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:126) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:142) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:168) at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:113) at org.apache.xbean.spring.context.ClassPathXmlApplicationContext.loadBeanDefinitions(ClassPathXmlApplicationContext.java:180) at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:94) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:292) at org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:161) at org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:51) at org.apache.servicemix.Main.main(Main.java:51) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:615) at org.codehaus.classworlds.Launcher.launchStandard(Launcher.java:410) at org.codehaus.classworlds.Launcher.launch(Launcher.java:344) at org.codehaus.classworlds.Launcher.main(Launcher.java:461) Gert Vanthienen wrote:Wolfgang,Have you had a chance to try the patched bin/servicemix on AIX yet? Are there any more error messages or is it behaving correctly again now?Regards, Gert Gert Vanthienen wrote:Wolfgang,The patch should have been attached to my previous mail. The contents can also be found in the bottom of this reply. For your convenience, I have also added an already patched version of the file to this mail...Gert bebop01 wrote:Yes I can do that. How can I get the patch? Wolfgang Gert Vanthienen wrote:L.S.,Sorry for the late reply. I have attached a patch for bin/servicemix which works on Linux and OS/400 and which should fix the problem on AIX. I'm unable to test the script file on AIX myself though. Would the original poster be able to try the modified script on his/her server?Thanks, Gert bebop01 wrote:Hello,Since the snapshot version from 11. January 2007 I can't start servicemixon aix anymore. I always get an ClassCircularityError loading activemq.xml. Any ideas would be highly appreciated.Index: distributions/apache-servicemix/src/main/release/bin/servicemix =================================================================== --- distributions/apache-servicemix/src/main/release/bin/servicemix (revision 501398) +++ distributions/apache-servicemix/src/main/release/bin/servicemix (working copy) @@ -86,7 +86,7 @@ fi # Increase the maximum file descriptors if we can - if !($cygwin | $os400); then + if [ "$os400" = "false" ] && [ "$cygwin" = "false" ]; then MAX_FD_LIMIT=`ulimit -H -n` if [ $? -eq 0 ]; then if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ]; then------------------------------------------------------------------------ #!/bin/sh # # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. # The ASF licenses this file to You under the Apache License, Version 2.0 # (the "License"); you may not use this file except in compliance with # the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # # $Id: servicemix 979 2005-11-30 22:50:55Z bsnyder $ # DIRNAME=`dirname $0` PROGNAME=`basename $0` # # Check/Set up some easily accessible MIN/MAX params for JVM mem usage # if [ "x$JAVA_MIN_MEM" = "x" ]; then JAVA_MIN_MEM=128M export JAVA_MIN_MEM fiif [ "x$JAVA_MAX_MEM" = "x" ]; thenJAVA_MAX_MEM=512M export JAVA_MAX_MEM fi warn() { echo "${PROGNAME}: $*" } die() { warn "$*" exit 1 } maybeSource() { file="$1" if [ -f "$file" ] ; then . $file fi } detectOS() { # OS specific support (must be 'true' or 'false'). cygwin=false; darwin=false; aix=false; os400=false; case "`uname`" in CYGWIN*) cygwin=true ;; Darwin*) darwin=true ;; AIX*) aix=true ;; OS400*) os400=true ;; esac # For AIX, set an environment variable if $aix; then export [EMAIL PROTECTED] export IBM_JAVA_HEAPDUMP_TEXT=trueecho $LDR_CNTRL fi} unlimitFD() { # Use the maximum available, or set MAX_FD != -1 to use that if [ "x$MAX_FD" = "x" ]; then MAX_FD="maximum" fi# Increase the maximum file descriptors if we canif [ "$os400" = "false" ] && [ "$cygwin" = "false" ]; then MAX_FD_LIMIT=`ulimit -H -n` if [ $? -eq 0 ]; then if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ]; then # use the system max MAX_FD="$MAX_FD_LIMIT" fiulimit -n $MAX_FD# echo "ulimit -n" `ulimit -n` if [ $? -ne 0 ]; then warn "Could not set maximum file descriptor limit: $MAX_FD" fi else warn "Could not query system maximum file descriptor limit: $MAX_FD_LIMIT" fi fi } locateHome() { if [ "x$SERVICEMIX_HOME" != "x" ]; then warn "Ignoring predefined value for SERVICEMIX_HOME" fiSERVICEMIX_HOME=`cd $DIRNAME/..; pwd`if [ ! -d "$SERVICEMIX_HOME" ]; then die "SERVICEMIX_HOME is not valid: $SERVICEMIX_HOME" fi } setupNativePath() { # Support for loading native libraries LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:$SERVICEMIX_HOME/lib"# For Cygwin, set PATH from LD_LIBRARY_PATHif $cygwin; then LD_LIBRARY_PATH=`cygpath --path --windows "$LD_LIBRARY_PATH"` PATH="$PATH;$LD_LIBRARY_PATH" export PATH fi export LD_LIBRARY_PATH } locateJava() { # Setup the Java Virtual Machine if $cygwin ; then [ -n "$JAVA" ] && JAVA=`cygpath --unix "$JAVA"` [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` fiif [ "x$JAVA" = "x" ]; thenif [ "x$JAVA_HOME" != "x" ]; then if [ ! -d "$JAVA_HOME" ]; then die "JAVA_HOME is not valid: $JAVA_HOME" fi JAVA="$JAVA_HOME/bin/java" else warn "JAVA_HOME not set; results may vary" JAVA="java" fi fi } detectJVM() { echo "`$JAVA -version`"# This service should call `java -version`, # read stdout, and look for hintsif $JAVA -version 2>&1 | grep "^IBM" | $os400; then JVM_VENDOR="IBM" else JVM_VENDOR="SUN" fi # echo "JVM vendor is $JVM_VENDOR" } setupDebugOptions() { if [ "x$JAVA_OPTS" = "x" ]; then JAVA_OPTS="$DEFAULT_JAVA_OPTS" fi export JAVA_OPTS# Set Debug options if enabledif [ "x$SERVICEMIX_DEBUG" != "x" ]; then # Use the defaults if JAVA_DEBUG_OPTS was not set if [ "x$JAVA_DEBUG_OPTS" = "x" ]; then JAVA_DEBUG_OPTS="$DEFAULT_JAVA_DEBUG_OPTS" fiJAVA_OPTS="$JAVA_DEBUG_OPTS $JAVA_OPTS"warn "Enabling Java debug options: $JAVA_DEBUG_OPTS" fi } setupDefaults() { DEFAULT_JAVA_OPTS="-Xms$JAVA_MIN_MEM -Xmx$JAVA_MAX_MEM -Dderby.system.home=$SERVICEMIX_HOME/var -Dderby.storage.fileSyncTransactionLog=true -Dcom.sun.management.jmxremote" #Set the JVM_VENDOR specific JVM flags if [ "$JVM_VENDOR" = "SUN" ]; then DEFAULT_JAVA_OPTS="-server $DEFAULT_JAVA_OPTS" elif [ "$JVM_VENDOR" = "IBM" ]; then if $os400; then DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS" elif $aix; then DEFAULT_JAVA_OPTS="-Xlp $DEFAULT_JAVA_OPTS" else DEFAULT_JAVA_OPTS="-Xverify:none $DEFAULT_JAVA_OPTS" fi fi # Add the conf directory so it picks up the Log4J config CLASSPATH="$CLASSPATH:$SERVICEMIX_HOME/conf" DEFAULT_JAVA_DEBUG_OPTS="-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"#### TODO: Move to conf/profiler/yourkit.{sh|cmd} ## # Uncomment to enable YourKit profiling #DEFAULT_JAVA_DEBUG_OPTS="-Xrunyjpagent" } setupClassworlds() { # Setup the classpath CLASSPATH="$CLASSPATH:$SERVICEMIX_HOME/lib/classworlds-1.0.1.jar"# Setup Classworlds optionsCLASSWORLDS_CONF="$SERVICEMIX_HOME/conf/servicemix.conf" } setupProfiler() { # Load profiler settings if [ "x$SERVICEMIX_PROFILER" != "x" ]; thenSERVICEMIX_PROFILER_SCRIPT="$SERVICEMIX_HOME/conf/profiler/$SERVICEMIX_PROFILER.sh"if [ ! -e "$SERVICEMIX_PROFILER_SCRIPT" ]; then die "Missing configuration for profiler '$SERVICEMIX_PROFILER': $SERVICEMIX_PROFILER_SCRIPT" fi fi# Execute the JVM or the load the profilerif [ "x$SERVICEMIX_PROFILER" != "x" ]; then warn "Loading profiler script: $SERVICEMIX_PROFILER_SCRIPT" . "$SERVICEMIX_PROFILER_SCRIPT" fi } init() { # Determine if there is special OS handling we must perform detectOS# Unlimit the number of file descriptors if possibleunlimitFD# Locate the ServiceMix home directorylocateHome# Load system-wide servicemix configurationmaybeSource "/etc/servicemix.conf"# Load installation configurationmaybeSource "$SERVICEMIX_HOME/conf/servicemix.rc"# Load user servicemix configurationmaybeSource "$HOME/.servicemixrc"# Setup the native library pathsetupNativePath# Locate the Java VM to executelocateJava# Determine the JVM vendordetectJVM # Setup default options setupDefaults# Install debug optionssetupDebugOptions# Setup the ClassWorlds environmentsetupClassworlds# Setup profiler specific configurationsetupProfiler } run() { # For Cygwin, switch paths to Windows format before running java if $cygwin; then SERVICEMIX_HOME=`cygpath --path --windows "$SERVICEMIX_HOME"` CLASSPATH=`cygpath --path --windows "$CLASSPATH"` CLASSWORLDS_CONF=`cygpath --path --windows "$CLASSWORLDS_CONF"` CYGHOME=`cygpath --windows "$HOME"` fi# Execute the Java Virtual Machine# echo $JAVA \ # $JAVA_OPTS \ # $SERVICEMIX_OPTS \ # -classpath "$CLASSPATH" \ # -Dclassworlds.conf="$CLASSWORLDS_CONF" \ # -Dservicemix.home="$SERVICEMIX_HOME" \ # -Dcygwin.user.home="$CYGHOME" \ # -Djava.endorsed.dirs="$SERVICEMIX_HOME/lib/endorsed" \ # org.codehaus.classworlds.Launcher \# "$@" exec $JAVA \$JAVA_OPTS \ $SERVICEMIX_OPTS \ -classpath "$CLASSPATH" \ -Dclassworlds.conf="$CLASSWORLDS_CONF" \ -Dservicemix.home="$SERVICEMIX_HOME" \ -Dcygwin.user.home="$CYGHOME" \ -Djava.endorsed.dirs="$SERVICEMIX_HOME/lib/endorsed" \ org.codehaus.classworlds.Launcher \"$@" }main() { init run $@ } main $@
