You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by da...@apache.org on 2008/03/01 22:06:11 UTC
svn commit: r632657 -
/openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/src/main/java/org/apache/openejb/tomcat/installer/Installer.java
Author: dain
Date: Sat Mar 1 13:06:04 2008
New Revision: 632657
URL: http://svn.apache.org/viewvc?rev=632657&view=rev
Log:
OPENEJB-757 copy openejb-javaagent.jar to tomcat lib directory to avoid problems with path in shell scripts when upgrading openejb
Modified:
openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/src/main/java/org/apache/openejb/tomcat/installer/Installer.java
Modified: openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/src/main/java/org/apache/openejb/tomcat/installer/Installer.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/src/main/java/org/apache/openejb/tomcat/installer/Installer.java?rev=632657&r1=632656&r2=632657&view=diff
==============================================================================
--- openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/src/main/java/org/apache/openejb/tomcat/installer/Installer.java (original)
+++ openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/src/main/java/org/apache/openejb/tomcat/installer/Installer.java Sat Mar 1 13:06:04 2008
@@ -45,8 +45,7 @@
static {
// is the OpenEJB listener installed
- Boolean listener = (Boolean) org.apache.openejb.loader.OpenEJBListener.isListenerInstalled();
-// Boolean listener = (Boolean) invokeStaticNoArgMethod("org.apache.openejb.loader.OpenEJBListener", "isListenerInstalled");
+ Boolean listener = (Boolean) invokeStaticNoArgMethod("org.apache.openejb.loader.OpenEJBListener", "isListenerInstalled");
if (listener == null) listener = false;
listenerInstalled = listener;
@@ -172,6 +171,30 @@
}
//
+ // Copy openejb-javaagent.jar to lib
+ //
+ boolean copyJavaagentJar = true;
+ File javaagentJar = new File(paths.getCatalinaLibDir(), "openejb-javaagent.jar");
+ if (javaagentJar.exists()) {
+ if (paths.getOpenEJBJavaagentJar().length() != javaagentJar.length()) {
+ // md5 diff the files
+ } else {
+// addInfo("OpenEJB javaagent jar already installed in Tomcat lib directory.");
+ copyJavaagentJar = false;
+ }
+ }
+
+ if (copyJavaagentJar) {
+ try {
+ copyFile(paths.getOpenEJBJavaagentJar(), javaagentJar);
+ addInfo("Copy " + paths.getOpenEJBJavaagentJar().getName() + " to lib");
+ } catch (IOException e) {
+ addError("Unable to copy OpenEJB javaagent jar to Tomcat lib directory. This will need to be performed manually.", e);
+ }
+ }
+
+
+ //
// bin/catalina.sh
//
@@ -195,7 +218,7 @@
}
// add our magic bits to the catalina sh file
- String openejbJavaagentPath = paths.getCatalinaBaseDir().toURI().relativize(paths.getOpenEJBJavaagentJar().toURI()).getPath();
+ String openejbJavaagentPath = paths.getCatalinaBaseDir().toURI().relativize(javaagentJar.toURI()).getPath();
String newCatalinaSh = catalinaShOriginal.replace("# ----- Execute The Requested Command",
"# Add OpenEJB javaagent\n" +
"if [ -r \"$CATALINA_BASE\"/" + openejbJavaagentPath + " ]; then\n" +
@@ -253,7 +276,7 @@
// the core jar contains the config files
return;
}
- JarFile coreJar = null;
+ JarFile coreJar;
try {
coreJar = new JarFile(paths.getOpenEJBCoreJar());
} catch (IOException e) {