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);


Reply via email to