You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by ga...@apache.org on 2007/09/27 22:58:10 UTC
svn commit: r580151 - in /geronimo/server/trunk:
configs/jaxws-deployer/src/main/resources/
modules/geronimo-jaxws-builder/src/main/java/org/apache/geronimo/jaxws/builder/JAXWSToolsCLI.java
Author: gawor
Date: Thu Sep 27 13:58:10 2007
New Revision: 580151
URL: http://svn.apache.org/viewvc?rev=580151&view=rev
Log:
a better way to determin geronimo home
Added:
geronimo/server/trunk/configs/jaxws-deployer/src/main/resources/
- copied from r580141, geronimo/server/trunk/configs/client-system/src/main/resources/
Modified:
geronimo/server/trunk/modules/geronimo-jaxws-builder/src/main/java/org/apache/geronimo/jaxws/builder/JAXWSToolsCLI.java
Modified: geronimo/server/trunk/modules/geronimo-jaxws-builder/src/main/java/org/apache/geronimo/jaxws/builder/JAXWSToolsCLI.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-jaxws-builder/src/main/java/org/apache/geronimo/jaxws/builder/JAXWSToolsCLI.java?rev=580151&r1=580150&r2=580151&view=diff
==============================================================================
--- geronimo/server/trunk/modules/geronimo-jaxws-builder/src/main/java/org/apache/geronimo/jaxws/builder/JAXWSToolsCLI.java (original)
+++ geronimo/server/trunk/modules/geronimo-jaxws-builder/src/main/java/org/apache/geronimo/jaxws/builder/JAXWSToolsCLI.java Thu Sep 27 13:58:10 2007
@@ -19,6 +19,8 @@
import java.io.File;
import java.lang.reflect.InvocationTargetException;
+import java.net.JarURLConnection;
+import java.net.URI;
import java.net.URL;
import java.util.ArrayList;
@@ -39,7 +41,7 @@
System.exit(1);
}
- String geroninoHome = System.getProperty("org.apache.geronimo.home.dir", "..");
+ String geroninoHome = getGeronimoHome();
String repository = System.getProperty("Xorg.apache.geronimo.repository.boot.path", "repository");
Maven2Repository mavenRepository = new Maven2Repository((new File(geroninoHome, repository)).getCanonicalFile());
ArrayList<ListableRepository> repositories = new ArrayList<ListableRepository>(1);
@@ -79,6 +81,31 @@
String [] cmdArgs = new String[args.length - 1];
System.arraycopy(args, 1, cmdArgs, 0, args.length - 1);
return cmdArgs;
+ }
+
+ private static String getGeronimoHome() {
+ String geronimoHome = System.getProperty("org.apache.geronimo.home.dir");
+ if (geronimoHome != null) {
+ return geronimoHome;
+ }
+
+ // guess from the location of the jar
+ URL url = JAXWSToolsCLI.class.getClassLoader().getResource("META-INF/startup-jar");
+ if (url != null) {
+ try {
+ JarURLConnection jarConnection = (JarURLConnection) url.openConnection();
+ url = jarConnection.getJarFileURL();
+
+ URI baseURI = new URI(url.toString()).resolve("..");
+ File dir = new File(baseURI);
+ return dir.getAbsolutePath();
+ } catch (Exception ignored) {
+ // ignore
+ }
+ }
+
+ // cannot determine the directory, return parent directory
+ return "..";
}
}