My summarized question:
What is "GERONIMO_BASE" is <GERONIMO_HOME>/bin/geronimo.sh startup script
intended to reference?
According to the documentation in that file, GERONIMO_BASE is supposed to point
at the base directory in which dynamic content is found.
I interpret dynamic content as content that is created or manipulated for the
purpose and use of the run-time geronimo process.
Dynamic content would include:
1) run-time configuration files
2) log files
3) temporary directories
4) possibly web applications
GERONIMO_BASE vs. GERONIMO_HOME
If I were to break down Geronimo 2.1.1 file structure into GERONIMO_HOME and
GERONIMO_BASE, would this break-down be correct?
- GERONIMO_HOME/bin
- GERONIMO_HOME/etc
- GERONIMO_HOME/lib
- GERONIMO_HOME/master-repository
- GERONIMO_HOME/cluster-repository
- GERONIMO_BASE/var
- GERONIMO_BASE/schema
After separating that out, what is the -Dorg.apache.geronimo.base.dir=<dir>
supposed to be pointing at? My assumption would be GERONIMO_BASE, as everything
from GERONIMO_HOME should be referred to on the command line, or loaded into
environment variables before or during execution of the geronimo server...
$GERONIMO_HOME/bin/server.jar
Point to knowing about this:
Let's say I wanted a server specific configuration stored in /etc/, say as :
/etc/geronimo-servers/default-server
I would want GERONIMO_BASE=/etc/geronimo-servers/default-server while
GERONIMO_HOME points to everything as I have above.
And yes, I realize GERONIMO_BASE has the temp and logs directory. Sparing me the
convenience of keeping this example brief, how do I achieve this simple split of
the GERONIMO_HOME and GERONIMO_BASE files?
The <GERONIMO_HOME>/bin/geronimo.sh script does not allow the separation of
GERONIMO_HOME and GERONIMO_BASE as it is currently written. It looks like the
liberty of both vairables pointing to the same directory has been widely
accepted, thus seemingly invalidating the reason for having both variables to
begin with.
A possible patch:
So assuming all my above asumptions are correct, this would be the patch to
geronimo to fix this issue:
-----SNIP-SNIP-----PATCH-----SNIP-SNIP-----
Index: assemblies/geronimo-boilerplate/src/main/underlay/bin/geronimo.sh
===================================================================
--- assemblies/geronimo-boilerplate/src/main/underlay/bin/geronimo.sh
(revision 682467)
+++ assemblies/geronimo-boilerplate/src/main/underlay/bin/geronimo.sh (working
copy)
@@ -235,11 +235,11 @@
GERONIMO_HOME=`cygpath --absolute --windows "$GERONIMO_HOME"`
GERONIMO_BASE=`cygpath --absolute --windows "$GERONIMO_BASE"`
GERONIMO_TMPDIR=`cygpath --windows "$GERONIMO_TMPDIR"`
- EXT_DIRS="$GERONIMO_BASE/lib/ext;$JRE_HOME/lib/ext"
- ENDORSED_DIRS="$GERONIMO_BASE/lib/endorsed;$JRE_HOME/lib/endorsed"
+ EXT_DIRS="$GERONIMO_HOME/lib/ext;$JRE_HOME/lib/ext"
+ ENDORSED_DIRS="$GERONIMO_HOME/lib/endorsed;$JRE_HOME/lib/endorsed"
else
- EXT_DIRS="$GERONIMO_BASE/lib/ext:$JRE_HOME/lib/ext"
- ENDORSED_DIRS="$GERONIMO_BASE/lib/endorsed:$JRE_HOME/lib/endorsed"
+ EXT_DIRS="$GERONIMO_HOME/lib/ext:$JRE_HOME/lib/ext"
+ ENDORSED_DIRS="$GERONIMO_HOME/lib/endorsed:$JRE_HOME/lib/endorsed"
fi
# ----- Execute The Requested Command -----------------------------------------
@@ -284,7 +284,7 @@
fi
# Setup the Java programming language agent
-JAVA_AGENT_JAR="$GERONIMO_BASE/bin/jpa.jar"
+JAVA_AGENT_JAR="$GERONIMO_HOME/bin/jpa.jar"
if [ -f "$JAVA_AGENT_JAR" ]; then
JAVA_AGENT_OPTS="-javaagent:$JAVA_AGENT_JAR"
else
-----SNIP-SNIP-----END-PATCH-----SNIP-SNIP-----
Discussion???
-RG