public JSPloader(JSPhandler jh, String jarName,
String jarURL)
throws javax.servlet.ServletException {
// ... initialization stuff ...
if (jh.allPermissionPolicy == null) {
if (!loadClassDataFS()) {
if (!loadClassDataURL())
throw new javax.servlet.ServletException(
"JSPloader.JSPloader unable to load jar");
}
return;
}
if (System.getSecurityManager() == null) {
System.setProperty("java.security.policy",
jh.allPermissionPolicy);
Policy.setPolicy(
new sun.security.provider.PolicyFile());
System.setSecurityManager(new SecurityManager());
}
try {
baseURL = new URL(jarURL+"/"+jarName+"/");
}
catch(MalformedURLException mue) {
throw new javax.servlet.ServletException(
"JSPloader.JSPloader " + mue);
}
String policyFile = jh.cachePath + "/" +
jarName + ".policy";
File f = new File(policyFile);
if ((f == null) || !f.exists()) {
policyFile = jh.cachePath + "/java.policy";
f = new File(policyFile);
}
if ((f != null) && f.exists()) {
System.setProperty("java.security.policy",
policyFile);
policy = new sun.security.provider.PolicyFile();
System.setProperty("java.security.policy",
jh.allPermissionPolicy);
} else
policy = Policy.getPolicy();
if (!loadClassDataFS()) {
if (!copyClassesURL() || !loadClassDataFS())
throw new javax.servlet.ServletException(
"JSPloader.JSPloader unable to load jar");
}
return;
}