You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by xu...@apache.org on 2011/04/26 02:46:23 UTC

svn commit: r1096640 - /openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java

Author: xuhaihong
Date: Tue Apr 26 00:46:23 2011
New Revision: 1096640

URL: http://svn.apache.org/viewvc?rev=1096640&view=rev
Log:
OPENEJB-1352 Ignore BeanValidation processing if it is embedded in Geronimo (Patch from Shawn Jiang)

Modified:
    openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java

Modified: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java?rev=1096640&r1=1096639&r2=1096640&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java Tue Apr 26 00:46:23 2011
@@ -509,39 +509,41 @@ public class Assembler extends Assembler
             AppContext appContext = new AppContext(appInfo.appId, SystemInstance.get(), classLoader, globalJndiContext, appJndiContext, appInfo.standaloneModule);
 
             Context containerSystemContext = containerSystem.getJNDIContext();
-
-            // Bean Validation
-            // ValidatorFactory needs to be put in the map sent to the entity manager factory
-            // so it has to be constructed before
-            Map<String, ValidatorFactory> validatorFactories = new HashMap<String, ValidatorFactory>();
-            for (ClientInfo clientInfo : appInfo.clients) {
-                validatorFactories.put(clientInfo.uniqueId, ValidatorBuilder.buildFactory(classLoader, clientInfo.validationInfo));
-            }
-            for (ConnectorInfo connectorInfo : appInfo.connectors) {
-                validatorFactories.put(connectorInfo.uniqueId, ValidatorBuilder.buildFactory(classLoader, connectorInfo.validationInfo));
-            }
-            for (EjbJarInfo ejbJarInfo : appInfo.ejbJars) {
-                validatorFactories.put(ejbJarInfo.uniqueId, ValidatorBuilder.buildFactory(classLoader, ejbJarInfo.validationInfo));
-            }
-            for (WebAppInfo webAppInfo : appInfo.webApps) {
-                validatorFactories.put(webAppInfo.uniqueId, ValidatorBuilder.buildFactory(classLoader, webAppInfo.validationInfo));
-            }
-            moduleIds.addAll(validatorFactories.keySet());
-
-            // validators bindings
-            for (Entry<String, ValidatorFactory> validatorFactory : validatorFactories.entrySet()) {
-                String id = validatorFactory.getKey();
-                ValidatorFactory factory = validatorFactory.getValue();
-                try {
-                    containerSystemContext.bind(VALIDATOR_FACTORY_NAMING_CONTEXT + id, factory);
-                    containerSystemContext.bind(VALIDATOR_NAMING_CONTEXT + id, factory.usingContext().getValidator());
-                } catch (NameAlreadyBoundException e) {
-                    throw new OpenEJBException("ValidatorFactory already exists for module " + id);
-                } catch (Exception e) {
-                    throw new OpenEJBException(e);
+            
+            if (!SystemInstance.get().hasProperty("openejb.geronimo")) {
+                // Bean Validation
+                // ValidatorFactory needs to be put in the map sent to the entity manager factory
+                // so it has to be constructed before
+                Map<String, ValidatorFactory> validatorFactories = new HashMap<String, ValidatorFactory>();
+                for (ClientInfo clientInfo : appInfo.clients) {
+                    validatorFactories.put(clientInfo.uniqueId, ValidatorBuilder.buildFactory(classLoader, clientInfo.validationInfo));
+                }
+                for (ConnectorInfo connectorInfo : appInfo.connectors) {
+                    validatorFactories.put(connectorInfo.uniqueId, ValidatorBuilder.buildFactory(classLoader, connectorInfo.validationInfo));
+                }
+                for (EjbJarInfo ejbJarInfo : appInfo.ejbJars) {
+                    validatorFactories.put(ejbJarInfo.uniqueId, ValidatorBuilder.buildFactory(classLoader, ejbJarInfo.validationInfo));
+                }
+                for (WebAppInfo webAppInfo : appInfo.webApps) {
+                    validatorFactories.put(webAppInfo.uniqueId, ValidatorBuilder.buildFactory(classLoader, webAppInfo.validationInfo));
+                }
+                moduleIds.addAll(validatorFactories.keySet());
+
+                // validators bindings
+                for (Entry<String, ValidatorFactory> validatorFactory : validatorFactories.entrySet()) {
+                    String id = validatorFactory.getKey();
+                    ValidatorFactory factory = validatorFactory.getValue();
+                    try {
+                        containerSystemContext.bind(VALIDATOR_FACTORY_NAMING_CONTEXT + id, factory);
+                        containerSystemContext.bind(VALIDATOR_NAMING_CONTEXT + id, factory.usingContext().getValidator());
+                    } catch (NameAlreadyBoundException e) {
+                        throw new OpenEJBException("ValidatorFactory already exists for module " + id);
+                    } catch (Exception e) {
+                        throw new OpenEJBException(e);
+                    }
                 }
             }
-
+            
             // JPA - Persistence Units MUST be processed first since they will add ClassFileTransformers
             // to the class loader which must be added before any classes are loaded
             PersistenceBuilder persistenceBuilder = new PersistenceBuilder(persistenceClassLoaderHandler);