Author: rmannibucau
Date: Tue Mar 13 13:40:02 2018
New Revision: 1826631
URL: http://svn.apache.org/viewvc?rev=1826631&view=rev
Log:
OWB-1221 asm 6 upgrade - patch from jgallimore (1.2.x)
Modified:
openwebbeans/branches/owb_1.2.x/pom.xml
openwebbeans/branches/owb_1.2.x/webbeans-impl/pom.xml
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/config/OpenWebBeansConfiguration.java
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/config/WebBeansContext.java
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/AbstractProxyFactory.java
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/InterceptorDecoratorProxyFactory.java
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/NormalScopeProxyFactory.java
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/SubclassProxyFactory.java
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/resources/META-INF/openwebbeans/openwebbeans.properties
openwebbeans/branches/owb_1.2.x/webbeans-tomcat7/src/main/java/org/apache/webbeans/web/tomcat7/TomcatInstanceManager.java
Modified: openwebbeans/branches/owb_1.2.x/pom.xml
URL:
http://svn.apache.org/viewvc/openwebbeans/branches/owb_1.2.x/pom.xml?rev=1826631&r1=1826630&r2=1826631&view=diff
==============================================================================
--- openwebbeans/branches/owb_1.2.x/pom.xml (original)
+++ openwebbeans/branches/owb_1.2.x/pom.xml Tue Mar 13 13:40:02 2018
@@ -78,11 +78,11 @@
<geronimo_interceptor.version>1.0</geronimo_interceptor.version>
<geronimo_validation.version>1.1</geronimo_validation.version>
<tomcat6.version>6.0.35</tomcat6.version>
- <tomcat7.version>7.0.54</tomcat7.version>
+ <tomcat7.version>7.0.85</tomcat7.version>
<openejb.version>3.1.4</openejb.version>
<myfaces.version>1.2.9</myfaces.version>
<myfaces2.version>2.2.3</myfaces2.version>
- <xbean.version>4.1</xbean.version>
+ <xbean.version>4.6</xbean.version>
</properties>
<mailingLists>
@@ -584,7 +584,7 @@
</dependency>
<dependency>
<groupId>org.apache.xbean</groupId>
- <artifactId>xbean-asm5-shaded</artifactId>
+ <artifactId>xbean-asm6-shaded</artifactId>
<version>${xbean.version}</version>
</dependency>
@@ -711,6 +711,16 @@
<groupId>org.apache.openejb</groupId>
<artifactId>openejb-core</artifactId>
<version>${openejb.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-ra</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activeio-core</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
Modified: openwebbeans/branches/owb_1.2.x/webbeans-impl/pom.xml
URL:
http://svn.apache.org/viewvc/openwebbeans/branches/owb_1.2.x/webbeans-impl/pom.xml?rev=1826631&r1=1826630&r2=1826631&view=diff
==============================================================================
--- openwebbeans/branches/owb_1.2.x/webbeans-impl/pom.xml (original)
+++ openwebbeans/branches/owb_1.2.x/webbeans-impl/pom.xml Tue Mar 13 13:40:02
2018
@@ -43,7 +43,7 @@
</dependency>
<dependency>
<groupId>org.apache.xbean</groupId>
- <artifactId>xbean-asm5-shaded</artifactId>
+ <artifactId>xbean-asm6-shaded</artifactId>
</dependency>
<dependency>
Modified:
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/config/OpenWebBeansConfiguration.java
URL:
http://svn.apache.org/viewvc/openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/config/OpenWebBeansConfiguration.java?rev=1826631&r1=1826630&r2=1826631&view=diff
==============================================================================
---
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/config/OpenWebBeansConfiguration.java
(original)
+++
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/config/OpenWebBeansConfiguration.java
Tue Mar 13 13:40:02 2018
@@ -44,14 +44,8 @@ import org.apache.webbeans.logger.WebBea
public class OpenWebBeansConfiguration
{
/**Logger instance*/
- private final static Logger logger =
WebBeansLoggerFacade.getLogger(OpenWebBeansConfiguration.class);
+ private static final Logger logger =
WebBeansLoggerFacade.getLogger(OpenWebBeansConfiguration.class);
- /**Default configuration files*/
- private final static String DEFAULT_CONFIG_PROPERTIES_NAME =
"META-INF/openwebbeans/openwebbeans.properties";
-
- /**Property of application*/
- private final Properties configProperties = new Properties();
-
/**Conversation periodic delay in ms.*/
public static final String CONVERSATION_PERIODIC_DELAY =
"org.apache.webbeans.conversation.Conversation.periodicDelay";
@@ -123,6 +117,23 @@ public class OpenWebBeansConfiguration
*/
public static final String IGNORED_INTERFACES =
"org.apache.webbeans.ignoredDecoratorInterfaces";
+ /**
+ * The Java Version to use for the generated proxy classes.
+ * If "auto" then we will pick the version of the current JVM.
+ * The default is set to "1.6" as some tools in jetty/tomcat/etc still
+ * cannot properly handle Java8 (mostly due to older Eclipse JDT versions).
+ */
+ public static final String GENERATOR_JAVA_VERSIN =
"org.apache.webbeans.generator.javaVersion";
+
+
+ /**Default configuration files*/
+ private static final String DEFAULT_CONFIG_PROPERTIES_NAME =
"META-INF/openwebbeans/openwebbeans.properties";
+
+ private static final String AUTO_CONFIG = "auto";
+
+ /**Property of application*/
+ private final Properties configProperties = new Properties();
+
private Set<String> ignoredInterfaces;
/**
@@ -213,15 +224,15 @@ public class OpenWebBeansConfiguration
private Properties doPrivilegedGetSystemProperties()
{
return AccessController.doPrivileged(
- new PrivilegedAction<Properties>()
+ new PrivilegedAction<Properties>()
+ {
+ @Override
+ public Properties run()
{
- @Override
- public Properties run()
- {
- return System.getProperties();
- }
-
+ return System.getProperties();
}
+
+ }
);
}
@@ -324,4 +335,15 @@ public class OpenWebBeansConfiguration
return ignoredInterfaces;
}
+
+ public String getGeneratorJavaVersion()
+ {
+ String generatorJavaVersion = getProperty(GENERATOR_JAVA_VERSIN);
+ if (generatorJavaVersion == null ||
AUTO_CONFIG.equals(generatorJavaVersion))
+ {
+ return System.getProperty("java.version");
+ }
+
+ return generatorJavaVersion;
+ }
}
Modified:
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/config/WebBeansContext.java
URL:
http://svn.apache.org/viewvc/openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/config/WebBeansContext.java?rev=1826631&r1=1826630&r2=1826631&view=diff
==============================================================================
---
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/config/WebBeansContext.java
(original)
+++
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/config/WebBeansContext.java
Tue Mar 13 13:40:02 2018
@@ -77,9 +77,9 @@ public class WebBeansContext
private final DecoratorsManager decoratorsManager = new
DecoratorsManager(this);
private final ExtensionLoader extensionLoader = new ExtensionLoader(this);
private final InterceptorsManager interceptorsManager = new
InterceptorsManager(this);
- private final InterceptorDecoratorProxyFactory
interceptorDecoratorProxyFactory = new InterceptorDecoratorProxyFactory(this);
- private final NormalScopeProxyFactory normalScopeProxyFactory = new
NormalScopeProxyFactory(this);
- private final SubclassProxyFactory subclassProxyFactory = new
SubclassProxyFactory(this);
+ private final InterceptorDecoratorProxyFactory
interceptorDecoratorProxyFactory;
+ private final NormalScopeProxyFactory normalScopeProxyFactory;
+ private final SubclassProxyFactory subclassProxyFactory;
private final OpenWebBeansConfiguration openWebBeansConfiguration;
private final PluginLoader pluginLoader = new PluginLoader();
private final SerializableBeanVault serializableBeanVault = new
SerializableBeanVault();
@@ -140,6 +140,11 @@ public class WebBeansContext
securityService = getService(SecurityService.class);
applicationBoundaryService =
getService(ApplicationBoundaryService.class);
+ interceptorDecoratorProxyFactory = new
InterceptorDecoratorProxyFactory(this);
+ normalScopeProxyFactory = new NormalScopeProxyFactory(this);
+ subclassProxyFactory = new SubclassProxyFactory(this);
+
+
// Allow the WebBeansContext itself to be looked up
managerMap.put(getClass(), this);
Modified:
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/AbstractProxyFactory.java
URL:
http://svn.apache.org/viewvc/openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/AbstractProxyFactory.java?rev=1826631&r1=1826630&r2=1826631&view=diff
==============================================================================
---
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/AbstractProxyFactory.java
(original)
+++
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/AbstractProxyFactory.java
Tue Mar 13 13:40:02 2018
@@ -18,6 +18,9 @@
*/
package org.apache.webbeans.proxy;
+import static org.apache.xbean.asm6.ClassReader.SKIP_DEBUG;
+
+import java.io.InputStream;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
@@ -31,10 +34,12 @@ import java.util.logging.Logger;
import org.apache.webbeans.config.WebBeansContext;
import org.apache.webbeans.exception.WebBeansException;
import org.apache.webbeans.logger.WebBeansLoggerFacade;
-import org.apache.xbean.asm5.ClassWriter;
-import org.apache.xbean.asm5.MethodVisitor;
-import org.apache.xbean.asm5.Opcodes;
-import org.apache.xbean.asm5.Type;
+import org.apache.xbean.asm6.ClassReader;
+import org.apache.xbean.asm6.ClassWriter;
+import org.apache.xbean.asm6.MethodVisitor;
+import org.apache.xbean.asm6.Opcodes;
+import org.apache.xbean.asm6.Type;
+import org.apache.xbean.asm6.shade.commons.EmptyVisitor;
/**
* Base class for all OWB Proxy factories
@@ -53,6 +58,7 @@ public abstract class AbstractProxyFacto
private static final Logger logger =
WebBeansLoggerFacade.getLogger(AbstractProxyFactory.class);
+
protected WebBeansContext webBeansContext;
/**
@@ -63,6 +69,8 @@ public abstract class AbstractProxyFacto
private Object unsafe = null;
private Method unsafeAllocateInstance = null;
+ private final int javaVersion;
+
/**
* The name of the field which stores the passivationID of the Bean this
proxy serves.
@@ -75,9 +83,34 @@ public abstract class AbstractProxyFacto
protected AbstractProxyFactory(WebBeansContext webBeansContext)
{
this.webBeansContext = webBeansContext;
+ javaVersion = determineDefaultJavaVersion();
initializeUnsafe();
}
+ private int determineDefaultJavaVersion()
+ {
+ String javaVersionProp =
webBeansContext.getOpenWebBeansConfiguration().getGeneratorJavaVersion();
+ if (javaVersionProp == null) // try to align on the runtime
+ {
+ javaVersionProp = System.getProperty("java.version");
+ }
+ if (javaVersionProp != null)
+ {
+ if (javaVersionProp.startsWith("1.8"))
+ {
+ return Opcodes.V1_8;
+ }
+ else if (javaVersionProp.startsWith("9") ||
javaVersionProp.startsWith("1.9"))
+ {
+ return Opcodes.V9;
+ }
+ }
+
+ // the fallback is the lowest one to ensure it supports all possible
classes of current environments
+ return Opcodes.V1_6;
+ }
+
+
protected ClassLoader getProxyClassLoader(Class<?> beanClass)
{
return
webBeansContext.getApplicationBoundaryService().getBoundaryClassLoader(beanClass);
@@ -242,7 +275,7 @@ public abstract class AbstractProxyFacto
Method[] interceptedMethods, Method[]
nonInterceptedMethods)
throws ProxyGenerationException
{
- ClassWriter cw = new ClassWriter(ClassWriter.COMPUTE_MAXS);
+ ClassWriter cw = new ClassWriter(ClassWriter.COMPUTE_FRAMES);
String classFileName = classToProxy.getName().replace('.', '/');
String[] interfaceNames = new
String[]{Type.getInternalName(getMarkerInterface())};
@@ -254,7 +287,7 @@ public abstract class AbstractProxyFacto
superClassName = Type.getInternalName(Object.class);
}
- cw.visit(Opcodes.V1_5, Opcodes.ACC_PUBLIC + Opcodes.ACC_SUPER +
Opcodes.ACC_SYNTHETIC, proxyClassFileName, null, superClassName,
interfaceNames);
+ cw.visit(findJavaVersion(classToProxy), Opcodes.ACC_PUBLIC +
Opcodes.ACC_SUPER + Opcodes.ACC_SYNTHETIC, proxyClassFileName, null,
superClassName, interfaceNames);
cw.visitSource(classFileName + ".java", null);
createInstanceVariables(cw, classToProxy, classFileName);
@@ -282,6 +315,47 @@ public abstract class AbstractProxyFacto
return cw.toByteArray();
}
+ private int findJavaVersion(final Class<?> from)
+ {
+ final String resource = from.getName().replace('.', '/') + ".class";
+ InputStream stream = null;
+
+ try
+ {
+ stream = from.getClassLoader().getResourceAsStream(resource);
+
+ if (stream == null)
+ {
+ return javaVersion;
+ }
+
+ final ClassReader reader = new ClassReader(stream);
+ final VersionVisitor visitor = new VersionVisitor();
+ reader.accept(visitor, SKIP_DEBUG);
+ if (visitor.version != 0)
+ {
+ return visitor.version;
+ }
+ }
+ catch (final Exception e)
+ {
+ // no-op
+ }
+ finally
+ {
+ try
+ {
+ stream.close();
+ }
+ catch (Exception e)
+ {
+ // no-op
+ }
+ }
+ // mainly for JVM classes - outside the classloader, find to fallback
on the JVM version
+ return javaVersion;
+ }
+
/**
* The 'defineClass' method on the ClassLoader is protected, thus we need
to invoke it via reflection.
@@ -773,4 +847,16 @@ public abstract class AbstractProxyFacto
}
+ private static class VersionVisitor extends EmptyVisitor
+ {
+ private int version;
+
+ @Override
+ public void visit(final int version, final int access, final String
name,
+ final String signature, final String superName,
final String[] interfaces)
+ {
+ super.visit(version, access, name, signature, superName,
interfaces);
+ this.version = version;
+ }
+ }
}
Modified:
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/InterceptorDecoratorProxyFactory.java
URL:
http://svn.apache.org/viewvc/openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/InterceptorDecoratorProxyFactory.java?rev=1826631&r1=1826630&r2=1826631&view=diff
==============================================================================
---
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/InterceptorDecoratorProxyFactory.java
(original)
+++
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/InterceptorDecoratorProxyFactory.java
Tue Mar 13 13:40:02 2018
@@ -24,11 +24,11 @@ import org.apache.webbeans.exception.Web
import org.apache.webbeans.logger.WebBeansLoggerFacade;
import org.apache.webbeans.util.Asserts;
import org.apache.webbeans.util.ExceptionUtil;
-import org.apache.xbean.asm5.ClassWriter;
-import org.apache.xbean.asm5.Label;
-import org.apache.xbean.asm5.MethodVisitor;
-import org.apache.xbean.asm5.Opcodes;
-import org.apache.xbean.asm5.Type;
+import org.apache.xbean.asm6.ClassWriter;
+import org.apache.xbean.asm6.Label;
+import org.apache.xbean.asm6.MethodVisitor;
+import org.apache.xbean.asm6.Opcodes;
+import org.apache.xbean.asm6.Type;
import javax.enterprise.inject.spi.Bean;
import java.io.ObjectStreamException;
Modified:
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/NormalScopeProxyFactory.java
URL:
http://svn.apache.org/viewvc/openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/NormalScopeProxyFactory.java?rev=1826631&r1=1826630&r2=1826631&view=diff
==============================================================================
---
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/NormalScopeProxyFactory.java
(original)
+++
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/NormalScopeProxyFactory.java
Tue Mar 13 13:40:02 2018
@@ -40,10 +40,10 @@ import org.apache.webbeans.intercept.Nor
import org.apache.webbeans.util.ClassUtil;
import org.apache.webbeans.util.ExceptionUtil;
import org.apache.webbeans.util.WebBeansUtil;
-import org.apache.xbean.asm5.ClassWriter;
-import org.apache.xbean.asm5.MethodVisitor;
-import org.apache.xbean.asm5.Opcodes;
-import org.apache.xbean.asm5.Type;
+import org.apache.xbean.asm6.ClassWriter;
+import org.apache.xbean.asm6.MethodVisitor;
+import org.apache.xbean.asm6.Opcodes;
+import org.apache.xbean.asm6.Type;
/**
* This factory creates proxies which delegate the
@@ -504,7 +504,7 @@ public class NormalScopeProxyFactory ext
* if targetMethod is protected. Please see Java LangSpec 6.6.2 about the
complex
* rules for calling 'protected' methods.
*
- * @see #generateDelegationMethod(org.apache.xbean.asm5.ClassWriter,
java.lang.reflect.Method, int, Class, String)
+ * @see #generateDelegationMethod(org.apache.xbean.asm6.ClassWriter,
java.lang.reflect.Method, int, Class, String)
*/
@SuppressWarnings("unused")
public static Object delegateProtectedMethod(Method method, Object
instance, Object[] params)
Modified:
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/SubclassProxyFactory.java
URL:
http://svn.apache.org/viewvc/openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/SubclassProxyFactory.java?rev=1826631&r1=1826630&r2=1826631&view=diff
==============================================================================
---
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/SubclassProxyFactory.java
(original)
+++
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/java/org/apache/webbeans/proxy/SubclassProxyFactory.java
Tue Mar 13 13:40:02 2018
@@ -26,10 +26,10 @@ import java.util.List;
import org.apache.webbeans.config.WebBeansContext;
import org.apache.webbeans.exception.WebBeansConfigurationException;
import org.apache.webbeans.util.ClassUtil;
-import org.apache.xbean.asm5.ClassWriter;
-import org.apache.xbean.asm5.MethodVisitor;
-import org.apache.xbean.asm5.Opcodes;
-import org.apache.xbean.asm5.Type;
+import org.apache.xbean.asm6.ClassWriter;
+import org.apache.xbean.asm6.MethodVisitor;
+import org.apache.xbean.asm6.Opcodes;
+import org.apache.xbean.asm6.Type;
/**
* This factory creates subclasses for abstract classes.
Modified:
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/resources/META-INF/openwebbeans/openwebbeans.properties
URL:
http://svn.apache.org/viewvc/openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/resources/META-INF/openwebbeans/openwebbeans.properties?rev=1826631&r1=1826630&r2=1826631&view=diff
==============================================================================
---
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/resources/META-INF/openwebbeans/openwebbeans.properties
(original)
+++
openwebbeans/branches/owb_1.2.x/webbeans-impl/src/main/resources/META-INF/openwebbeans/openwebbeans.properties
Tue Mar 13 13:40:02 2018
@@ -106,3 +106,21 @@ org.apache.webbeans.useBDABeansXMLScanne
#
org.apache.webbeans.proxy.mapping.javax.enterprise.context.RequestScoped=org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler
org.apache.webbeans.proxy.mapping.javax.enterprise.context.ApplicationScoped=org.apache.webbeans.intercept.ApplicationScopedBeanInterceptorHandler
################################################################################################
+
+######################### Java version for generated proxy classes
#############################
+# The Java Version to use for the generated proxy classes.
+# If "auto" then we will pick the version of the current JVM.
+# The default is set to "1.6" as some tools in jetty/tomcat/etc still
+# cannot properly handle Java8 (mostly due to older Eclipse JDT versions).
+# org.apache.webbeans.generator.javaVersion=1.6
+################################################################################################
+
+
+######################### Java version for generated proxy classes
#############################
+# The Java Version to use for the generated proxy classes.
+# If "auto" then we will pick the version of the current JVM.
+# The default is set to "1.6" as some tools in jetty/tomcat/etc still
+# cannot properly handle Java8 (mostly due to older Eclipse JDT versions).
+org.apache.webbeans.generator.javaVersion=1.6
+################################################################################################
+
Modified:
openwebbeans/branches/owb_1.2.x/webbeans-tomcat7/src/main/java/org/apache/webbeans/web/tomcat7/TomcatInstanceManager.java
URL:
http://svn.apache.org/viewvc/openwebbeans/branches/owb_1.2.x/webbeans-tomcat7/src/main/java/org/apache/webbeans/web/tomcat7/TomcatInstanceManager.java?rev=1826631&r1=1826630&r2=1826631&view=diff
==============================================================================
---
openwebbeans/branches/owb_1.2.x/webbeans-tomcat7/src/main/java/org/apache/webbeans/web/tomcat7/TomcatInstanceManager.java
(original)
+++
openwebbeans/branches/owb_1.2.x/webbeans-tomcat7/src/main/java/org/apache/webbeans/web/tomcat7/TomcatInstanceManager.java
Tue Mar 13 13:40:02 2018
@@ -67,7 +67,8 @@ public class TomcatInstanceManager imple
}
@Override
- public Object newInstance(Class<?> aClass) throws IllegalAccessException,
InvocationTargetException, NamingException, InstantiationException
+ public Object newInstance(Class<?> aClass) throws IllegalAccessException,
InvocationTargetException, NamingException,
+ InstantiationException, NoSuchMethodException
{
// Creates a defaut instance
Object object = this.processor.newInstance(aClass);
@@ -79,7 +80,8 @@ public class TomcatInstanceManager imple
}
@Override
- public Object newInstance(String str) throws IllegalAccessException,
InvocationTargetException, NamingException, InstantiationException,
ClassNotFoundException
+ public Object newInstance(String str) throws IllegalAccessException,
InvocationTargetException, NamingException,
+ InstantiationException, ClassNotFoundException,
NoSuchMethodException
{
// Creates a defaut instance
Object object = this.processor.newInstance(str);
@@ -98,7 +100,8 @@ public class TomcatInstanceManager imple
}
@Override
- public Object newInstance(String str, ClassLoader cl) throws
IllegalAccessException, InvocationTargetException, NamingException,
InstantiationException, ClassNotFoundException
+ public Object newInstance(String str, ClassLoader cl) throws
IllegalAccessException, InvocationTargetException, NamingException,
+ InstantiationException, ClassNotFoundException,
NoSuchMethodException
{
// Creates a defaut instance
Object object = this.processor.newInstance(str, cl);