You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by ba...@apache.org on 2007/02/20 22:25:24 UTC
svn commit: r509762 -
/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/ModuleBuilder.java
Author: barrettj
Date: Tue Feb 20 13:25:24 2007
New Revision: 509762
URL: http://svn.apache.org/viewvc?view=rev&rev=509762
Log:
AXIS2-2221
Submitted by Ming Cheung. Add doPriv call.
Modified:
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/ModuleBuilder.java
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/ModuleBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/ModuleBuilder.java?view=diff&rev=509762&r1=509761&r2=509762
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/ModuleBuilder.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/ModuleBuilder.java Tue Feb 20 13:25:24 2007
@@ -19,12 +19,16 @@
import java.io.InputStream;
import java.io.StringWriter;
+import java.security.PrivilegedActionException;
+import java.security.PrivilegedExceptionAction;
import java.util.ArrayList;
import java.util.Iterator;
import javax.xml.namespace.QName;
import javax.xml.stream.XMLStreamException;
+
+
import org.apache.axiom.om.OMAttribute;
import org.apache.axiom.om.OMElement;
import org.apache.axis2.AxisFault;
@@ -38,6 +42,7 @@
import org.apache.axis2.engine.AxisConfiguration;
import org.apache.axis2.engine.MessageReceiver;
import org.apache.axis2.i18n.Messages;
+import org.apache.axis2.java.security.AccessController;
import org.apache.axis2.modules.Module;
/**
@@ -59,7 +64,19 @@
try {
if ((moduleClassName != null) && !"".equals(moduleClassName)) {
moduleClass = Loader.loadClass(module.getModuleClassLoader(), moduleClassName);
- module.setModule((Module) moduleClass.newInstance());
+ final Class fmoduleClass = moduleClass;
+ final AxisModule fmodule = module;
+ try {
+ AccessController.doPrivileged( new PrivilegedExceptionAction() {
+ public Object run() throws IllegalAccessException, InstantiationException {
+ Module new_module = (Module) fmoduleClass.newInstance();
+ fmodule.setModule(new_module);
+ return null;
+ }
+ });
+ } catch (PrivilegedActionException e) {
+ throw e.getException();
+ }
}
} catch (Exception e) {
throw new DeploymentException(e.getMessage(), e);
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org