You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by ve...@apache.org on 2016/07/02 14:12:22 UTC
svn commit: r1751067 - in /axis/axis2/java/core/branches/1_7: ./
modules/kernel/src/org/apache/axis2/classloader/
modules/kernel/src/org/apache/axis2/deployment/
modules/kernel/src/org/apache/axis2/deployment/util/
modules/kernel/test/org/apache/axis2/...
Author: veithen
Date: Sat Jul 2 14:12:21 2016
New Revision: 1751067
URL: http://svn.apache.org/viewvc?rev=1751067&view=rev
Log:
AXIS2-5792: Merge r1751057 to the 1.7 branch.
Removed:
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/AbstractResourceHandle.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/AbstractUrlResourceLocation.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/DirectoryResourceHandle.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/DirectoryResourceLocation.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/IoUtil.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/JarFileClassLoader.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/JarFileUrlConnection.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/JarFileUrlStreamHandler.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/JarResourceHandle.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/JarResourceLocation.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/JarStreamHandlerFactory.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/ResourceEnumeration.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/ResourceFinder.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/ResourceHandle.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/ResourceLocation.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/classloader/UrlResourceFinder.java
axis/axis2/java/core/branches/1_7/modules/kernel/test/org/apache/axis2/classloader/
Modified:
axis/axis2/java/core/branches/1_7/ (props changed)
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/deployment/DeploymentEngine.java
axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java
Propchange: axis/axis2/java/core/branches/1_7/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Sat Jul 2 14:12:21 2016
@@ -1,4 +1,4 @@
/axis/axis2/java/core/branches/1_6:1295540
/axis/axis2/java/core/branches/AXIOM-420:1334386-1336397
/axis/axis2/java/core/branches/AXIS2-4318:1230452,1295542,1324772,1327468,1329571,1332141,1335355,1335357,1340985
-/axis/axis2/java/core/trunk:1726494,1726509,1726513,1727171,1727174,1727177,1727180,1729891,1730095,1730139,1730180,1730186,1730195,1730197,1730222,1730300,1730308,1730310,1730317,1730322,1730335,1730369,1730427,1730618,1731425,1731441,1731446,1731448,1732354,1733137,1733663,1733713,1733766,1733770,1733773,1733850,1734176,1735331,1735795,1736512,1736543,1737030,1737567,1739001,1739186,1739343,1739346,1739348,1739493,1739592,1739594,1739815,1739826,1740693-1740694,1743824,1745826,1745860,1745869,1745875,1745912,1745924,1745929,1745941,1746001,1746028,1746109,1746782,1746784,1746787,1746813,1746842,1746880,1746883,1746889,1746894,1747448,1747466,1747503,1747575,1747578,1747601,1747773,1747920
+/axis/axis2/java/core/trunk:1726494,1726509,1726513,1727171,1727174,1727177,1727180,1729891,1730095,1730139,1730180,1730186,1730195,1730197,1730222,1730300,1730308,1730310,1730317,1730322,1730335,1730369,1730427,1730618,1731425,1731441,1731446,1731448,1732354,1733137,1733663,1733713,1733766,1733770,1733773,1733850,1734176,1735331,1735795,1736512,1736543,1737030,1737567,1739001,1739186,1739343,1739346,1739348,1739493,1739592,1739594,1739815,1739826,1740693-1740694,1743824,1745826,1745860,1745869,1745875,1745912,1745924,1745929,1745941,1746001,1746028,1746109,1746782,1746784,1746787,1746813,1746842,1746880,1746883,1746889,1746894,1747448,1747466,1747503,1747575,1747578,1747601,1747773,1747920,1751057
Modified: axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/deployment/DeploymentEngine.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/deployment/DeploymentEngine.java?rev=1751067&r1=1751066&r2=1751067&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/deployment/DeploymentEngine.java (original)
+++ axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/deployment/DeploymentEngine.java Sat Jul 2 14:12:21 2016
@@ -22,7 +22,6 @@ package org.apache.axis2.deployment;
import org.apache.axis2.AxisFault;
import org.apache.axis2.Constants;
-import org.apache.axis2.classloader.JarFileClassLoader;
import org.apache.axis2.context.ConfigurationContext;
import org.apache.axis2.deployment.repository.util.ArchiveReader;
import org.apache.axis2.deployment.repository.util.DeploymentFileData;
@@ -47,6 +46,7 @@ import org.apache.commons.logging.LogFac
import javax.xml.namespace.QName;
import javax.xml.stream.XMLStreamException;
import java.io.BufferedReader;
+import java.io.Closeable;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
@@ -1156,19 +1156,23 @@ public abstract class DeploymentEngine i
return (extensionMap != null) ? extensionMap.get(extension) : null;
}
+ private static void destroyClassLoader(ClassLoader classLoader) {
+ if (classLoader instanceof DeploymentClassLoader && classLoader instanceof Closeable) {
+ try {
+ ((Closeable)classLoader).close();
+ } catch (IOException ex) {
+ log.warn("Failed to destroy class loader " + classLoader, ex);
+ }
+ }
+ }
+
/**
* Clean up the mess
*/
public void cleanup() {
- if (axisConfig.getModuleClassLoader() instanceof JarFileClassLoader) {
- ((JarFileClassLoader) axisConfig.getModuleClassLoader()).destroy();
- }
- if (axisConfig.getServiceClassLoader() instanceof JarFileClassLoader) {
- ((JarFileClassLoader) axisConfig.getServiceClassLoader()).destroy();
- }
- if (axisConfig.getSystemClassLoader() instanceof JarFileClassLoader) {
- ((JarFileClassLoader) axisConfig.getSystemClassLoader()).destroy();
- }
+ destroyClassLoader(axisConfig.getModuleClassLoader());
+ destroyClassLoader(axisConfig.getServiceClassLoader());
+ destroyClassLoader(axisConfig.getSystemClassLoader());
if (scheduler != null) {
scheduler.cleanup(schedulerTask);
}
Modified: axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java?rev=1751067&r1=1751066&r2=1751067&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java (original)
+++ axis/axis2/java/core/branches/1_7/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java Sat Jul 2 14:12:21 2016
@@ -25,7 +25,6 @@ import org.apache.axiom.om.OMFactory;
import org.apache.axiom.soap.SOAP11Constants;
import org.apache.axiom.soap.SOAP12Constants;
import org.apache.axis2.AxisFault;
-import org.apache.axis2.classloader.JarFileClassLoader;
import org.apache.axis2.Constants;
import org.apache.axis2.jaxrs.JAXRSModel;
import org.apache.axis2.context.ConfigurationContext;
@@ -348,11 +347,7 @@ public class Utils {
classLoader = (URLClassLoader)AccessController
.doPrivileged(new PrivilegedAction() {
public Object run() {
- if (useJarFileClassLoader()) {
- return new JarFileClassLoader(urllist, parent);
- } else {
- return new DeploymentClassLoader(urllist, null, parent, isChildFirstClassLoading);
- }
+ return new DeploymentClassLoader(urllist, null, parent, isChildFirstClassLoading);
}
});
return classLoader;
@@ -361,20 +356,6 @@ public class Utils {
}
}
- private static boolean useJarFileClassLoader() {
- // The JarFileClassLoader was created to address a locking problem seen only on Windows platforms.
- // It carries with it a slight performance penalty that needs to be addressed. Rather than make
- // *nix OSes carry this burden we'll engage the JarFileClassLoader for Windows or if the user
- // specifically requests it.
- boolean useJarFileClassLoader;
- if (System.getProperty("org.apache.axis2.classloader.JarFileClassLoader") == null) {
- useJarFileClassLoader = System.getProperty("os.name").startsWith("Windows");
- } else {
- useJarFileClassLoader = Boolean.getBoolean("org.apache.axis2.classloader.JarFileClassLoader");
- }
- return useJarFileClassLoader;
- }
-
private static boolean addFiles(ArrayList urls, final File libfiles)
throws MalformedURLException {
Boolean exists = (Boolean)org.apache.axis2.java.security.AccessController