Updated to work with JDK 1.1.x properly: added try...catch and null checks
for various places system properties, etc. may be unavailable on 1.1.x systems; Check for new JAXP related jars git-svn-id: https://svn.apache.org/repos/asf/xml/commons/trunk@225992 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
7c30a0a75d
commit
44d3664db4
18
java/src/org/apache/env/Which.java
vendored
18
java/src/org/apache/env/Which.java
vendored
@ -177,7 +177,6 @@ public class Which
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
hash.put("java" + WhichConstant.TAG_VERSION, System.getProperty("java.version"));
|
hash.put("java" + WhichConstant.TAG_VERSION, System.getProperty("java.version"));
|
||||||
hash.put("java.runtime.name", System.getProperty("java.runtime.name"));
|
|
||||||
hash.put("file.encoding", System.getProperty("file.encoding"));
|
hash.put("file.encoding", System.getProperty("file.encoding"));
|
||||||
hash.put("java.vendor", System.getProperty("java.vendor"));
|
hash.put("java.vendor", System.getProperty("java.vendor"));
|
||||||
hash.put("os.name", System.getProperty("os.name"));
|
hash.put("os.name", System.getProperty("os.name"));
|
||||||
@ -185,6 +184,15 @@ public class Which
|
|||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
hash.put("Which" + WhichConstant.TAG_ERROR, "Accessing System.getProperty(...) threw: " + e.toString());
|
hash.put("Which" + WhichConstant.TAG_ERROR, "Accessing System.getProperty(...) threw: " + e.toString());
|
||||||
|
}
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// Not available on JDK 1.1.x
|
||||||
|
hash.put("java.runtime.name", System.getProperty("java.runtime.name"));
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
hash.put("Which" + WhichConstant.TAG_ERROR + "11x", "Accessing System.getProperty(java.runtime.name) threw: " + e.toString());
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -230,11 +238,14 @@ public class Which
|
|||||||
Hashtable subHash = new Hashtable();
|
Hashtable subHash = new Hashtable();
|
||||||
WhichProject proj = WhichFactory.newWhichProject(projName,
|
WhichProject proj = WhichFactory.newWhichProject(projName,
|
||||||
options);
|
options);
|
||||||
int tmpRetVal = proj.getInfo(subHash, options);
|
int subStatus = proj.getInfo(subHash, options);
|
||||||
|
|
||||||
|
subHash.put(projName + WhichConstant.TAG_STATUS,
|
||||||
|
WhichConstant.ITEM_DESC[subStatus]);
|
||||||
|
|
||||||
hash.put(projName + WhichConstant.TAG_HASHINFO, subHash);
|
hash.put(projName + WhichConstant.TAG_HASHINFO, subHash);
|
||||||
|
|
||||||
retVal = Math.max(tmpRetVal, retVal);
|
retVal = Math.max(subStatus, retVal);
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
@ -243,6 +254,7 @@ public class Which
|
|||||||
hash.put(projName
|
hash.put(projName
|
||||||
+ WhichConstant.ITEM_DESC[WhichConstant.ITEM_ERROR],
|
+ WhichConstant.ITEM_DESC[WhichConstant.ITEM_ERROR],
|
||||||
"newWhichProject threw: " + e.toString());
|
"newWhichProject threw: " + e.toString());
|
||||||
|
e.printStackTrace();
|
||||||
|
|
||||||
retVal = Math.max(WhichConstant.ITEM_ERROR, retVal);
|
retVal = Math.max(WhichConstant.ITEM_ERROR, retVal);
|
||||||
}
|
}
|
||||||
|
|||||||
28
java/src/org/apache/env/WhichJar.java
vendored
28
java/src/org/apache/env/WhichJar.java
vendored
@ -157,6 +157,20 @@ public abstract class WhichJar // prevent instantiation; provide static service
|
|||||||
|
|
||||||
// Grab the actual path from the System
|
// Grab the actual path from the System
|
||||||
String path = System.getProperty(pathName);
|
String path = System.getProperty(pathName);
|
||||||
|
if (null == path)
|
||||||
|
{
|
||||||
|
// Protect cases where the path isn't found
|
||||||
|
hash.put(
|
||||||
|
jarName
|
||||||
|
+ WhichConstant.ITEM_DESC[WhichConstant.ITEM_WARNING],
|
||||||
|
"searchPath [" + pathName
|
||||||
|
+ "] not found!");
|
||||||
|
|
||||||
|
return (WhichConstant.isStrict(options)
|
||||||
|
? WhichConstant.ITEM_WARNING
|
||||||
|
: WhichConstant.ITEM_NOTFOUND);
|
||||||
|
}
|
||||||
|
|
||||||
StringTokenizer st = new StringTokenizer(path, File.pathSeparator);
|
StringTokenizer st = new StringTokenizer(path, File.pathSeparator);
|
||||||
int retVal = WhichConstant.ITEM_UNKNOWN;
|
int retVal = WhichConstant.ITEM_UNKNOWN;
|
||||||
boolean jarFound = false;
|
boolean jarFound = false;
|
||||||
@ -238,6 +252,20 @@ public abstract class WhichJar // prevent instantiation; provide static service
|
|||||||
|
|
||||||
// Grab the actual path(s) from the System
|
// Grab the actual path(s) from the System
|
||||||
String path = System.getProperty(pathName);
|
String path = System.getProperty(pathName);
|
||||||
|
if (null == path)
|
||||||
|
{
|
||||||
|
// Protect cases where the path isn't found
|
||||||
|
hash.put(
|
||||||
|
jarName
|
||||||
|
+ WhichConstant.ITEM_DESC[WhichConstant.ITEM_WARNING],
|
||||||
|
" searchDirs [" + pathName
|
||||||
|
+ "] not found!");
|
||||||
|
|
||||||
|
return (WhichConstant.isStrict(options)
|
||||||
|
? WhichConstant.ITEM_WARNING
|
||||||
|
: WhichConstant.ITEM_NOTFOUND);
|
||||||
|
}
|
||||||
|
|
||||||
StringTokenizer st = new StringTokenizer(path, File.pathSeparator);
|
StringTokenizer st = new StringTokenizer(path, File.pathSeparator);
|
||||||
int retVal = WhichConstant.ITEM_UNKNOWN;
|
int retVal = WhichConstant.ITEM_UNKNOWN;
|
||||||
|
|
||||||
|
|||||||
6
java/src/org/apache/env/WhichXmlCommons.java
vendored
6
java/src/org/apache/env/WhichXmlCommons.java
vendored
@ -214,6 +214,12 @@ public class WhichXmlCommons implements WhichProject
|
|||||||
// Try to find older jaxp.jar in the classpath, etc.
|
// Try to find older jaxp.jar in the classpath, etc.
|
||||||
int ignored = WhichJar.searchClasspaths(hash, "jaxp.jar", options);
|
int ignored = WhichJar.searchClasspaths(hash, "jaxp.jar", options);
|
||||||
|
|
||||||
|
// Also try to find varous Sun shipped classes from JAXP packs, etc.
|
||||||
|
ignored = WhichJar.searchClasspaths(hash, "dom.jar", options);
|
||||||
|
ignored = WhichJar.searchClasspaths(hash, "sax.jar", options);
|
||||||
|
ignored = WhichJar.searchClasspaths(hash, "jaxp-api.jar", options);
|
||||||
|
|
||||||
|
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user