You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by dj...@apache.org on 2010/01/22 01:10:56 UTC
svn commit: r901935 [3/3] - in /geronimo/server/trunk:
framework/configs/karaf-framework/src/main/filtered-resources/etc/
framework/configs/rmi-naming/src/main/plan/
framework/modules/geronimo-core/src/main/java/org/apache/geronimo/validator/
framework...
Modified: geronimo/server/trunk/plugins/openejb/geronimo-openejb/src/main/java/org/apache/geronimo/openejb/EjbModuleImpl.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/openejb/geronimo-openejb/src/main/java/org/apache/geronimo/openejb/EjbModuleImpl.java?rev=901935&r1=901934&r2=901935&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/openejb/geronimo-openejb/src/main/java/org/apache/geronimo/openejb/EjbModuleImpl.java (original)
+++ geronimo/server/trunk/plugins/openejb/geronimo-openejb/src/main/java/org/apache/geronimo/openejb/EjbModuleImpl.java Fri Jan 22 00:10:53 2010
@@ -20,14 +20,21 @@
import java.util.Collection;
import java.util.Hashtable;
import java.util.List;
+import java.util.Map;
+
import javax.management.ObjectName;
+import javax.naming.Context;
+import javax.naming.NamingException;
+import org.apache.geronimo.j2ee.jndi.ApplicationJndi;
import org.apache.geronimo.j2ee.management.impl.InvalidObjectNameException;
+import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.kernel.ObjectNameUtil;
import org.apache.geronimo.management.EJB;
import org.apache.geronimo.management.EJBModule;
import org.apache.geronimo.management.J2EEApplication;
import org.apache.geronimo.management.J2EEServer;
+import org.apache.geronimo.naming.enc.EnterpriseNamingContext;
import org.apache.openejb.assembler.classic.EjbJarInfo;
import org.apache.openejb.UndeployException;
import org.apache.openejb.NoSuchApplicationException;
@@ -41,6 +48,8 @@
private static final Logger log = LoggerFactory.getLogger(EjbModuleImpl.class);
private final J2EEServer server;
private final J2EEApplication application;
+ private final ApplicationJndi applicationJndi;
+ private final Context moduleContext;
private final String deploymentDescriptor;
private final String objectName;
private final Collection<? extends EJB> ejbs;
@@ -49,13 +58,15 @@
private final OpenEjbSystem openEjbSystem;
private final EjbJarInfo ejbJarInfo;
- public EjbModuleImpl(String objectName, J2EEServer server, J2EEApplication application, String deploymentDescriptor, Collection<? extends EJB> ejbs, ClassLoader classLoader, OpenEjbSystem openEjbSystem, EjbJarInfo ejbJarInfo) {
+ public EjbModuleImpl(String objectName, J2EEServer server, J2EEApplication application, ApplicationJndi applicationJndi, Map<String, Object> moduleJndi, String deploymentDescriptor, Collection<? extends EJB> ejbs, ClassLoader classLoader, Kernel kernel, OpenEjbSystem openEjbSystem, EjbJarInfo ejbJarInfo) throws NamingException {
this.objectName = objectName;
ObjectName myObjectName = ObjectNameUtil.getObjectName(objectName);
verifyObjectName(myObjectName);
this.server = server;
this.application = application;
+ this.applicationJndi = applicationJndi;
+ this.moduleContext = EnterpriseNamingContext.livenReferences(moduleJndi, null, kernel, classLoader, "module/");
this.deploymentDescriptor = deploymentDescriptor;
this.ejbs = ejbs;
@@ -117,6 +128,13 @@
return result;
}
+ public ApplicationJndi getApplicationJndi() {
+ return applicationJndi;
+ }
+
+ public Context getModuleContext() {
+ return moduleContext;
+ }
protected void start() throws Exception {
openEjbSystem.createEjbJar(ejbJarInfo, classLoader);
Modified: geronimo/server/trunk/plugins/openejb/geronimo-openejb/src/main/java/org/apache/geronimo/openejb/EjbModuleImplGBean.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/openejb/geronimo-openejb/src/main/java/org/apache/geronimo/openejb/EjbModuleImplGBean.java?rev=901935&r1=901934&r2=901935&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/openejb/geronimo-openejb/src/main/java/org/apache/geronimo/openejb/EjbModuleImplGBean.java (original)
+++ geronimo/server/trunk/plugins/openejb/geronimo-openejb/src/main/java/org/apache/geronimo/openejb/EjbModuleImplGBean.java Fri Jan 22 00:10:53 2010
@@ -17,22 +17,41 @@
package org.apache.geronimo.openejb;
import java.util.Collection;
+import java.util.Map;
-import org.apache.geronimo.gbean.GBeanInfo;
-import org.apache.geronimo.gbean.GBeanInfoBuilder;
+import javax.naming.NamingException;
import org.apache.geronimo.gbean.GBeanLifecycle;
+import org.apache.geronimo.gbean.annotation.GBean;
+import org.apache.geronimo.gbean.annotation.ParamAttribute;
+import org.apache.geronimo.gbean.annotation.ParamReference;
+import org.apache.geronimo.gbean.annotation.ParamSpecial;
+import org.apache.geronimo.gbean.annotation.SpecialAttributeType;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
+import org.apache.geronimo.j2ee.jndi.ApplicationJndi;
+import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.management.J2EEServer;
import org.apache.geronimo.management.J2EEApplication;
import org.apache.geronimo.management.EJB;
import org.apache.openejb.assembler.classic.EjbJarInfo;
/**
+ * This starts before the ejb gbeans
+ *
* @version $Revision$ $Date$
*/
+@GBean(j2eeType = NameFactory.EJB_MODULE)
public final class EjbModuleImplGBean extends EjbModuleImpl implements GBeanLifecycle {
- public EjbModuleImplGBean(String objectName, J2EEServer server, J2EEApplication application, String deploymentDescriptor, Collection<? extends EJB> ejbs, ClassLoader classLoader, OpenEjbSystem openEjbSystem, EjbJarInfo ejbJarInfo) {
- super(objectName, server, application, deploymentDescriptor, ejbs, classLoader, openEjbSystem, ejbJarInfo);
+ public EjbModuleImplGBean(@ParamSpecial(type = SpecialAttributeType.objectName) String objectName,
+ @ParamReference(name = "J2EEServer", namingType = NameFactory.J2EE_SERVER) J2EEServer server,
+ @ParamReference(name = "J2EEApplication", namingType = NameFactory.J2EE_APPLICATION) J2EEApplication application,
+ @ParamReference(name = "ApplicationJndi", namingType = "GBEAN") ApplicationJndi applicationJndi,
+ @ParamAttribute(name = "moduleJndi") Map<String, Object> moduleJndi,
+ @ParamAttribute(name = "deploymentDescriptor") String deploymentDescriptor,
+ @ParamReference(name = "EJBCollection") Collection<? extends EJB> ejbs,
+ @ParamSpecial(type = SpecialAttributeType.classLoader) ClassLoader classLoader,
+ @ParamSpecial(type = SpecialAttributeType.kernel)Kernel kernel, @ParamReference(name = "OpenEjbSystem") OpenEjbSystem openEjbSystem,
+ @ParamAttribute(name = "ejbJarInfo") EjbJarInfo ejbJarInfo) throws NamingException {
+ super(objectName, server, application, applicationJndi, moduleJndi, deploymentDescriptor, ejbs, classLoader, kernel, openEjbSystem, ejbJarInfo);
}
public void doStart() throws Exception {
@@ -47,37 +66,4 @@
stop();
}
- public static final GBeanInfo GBEAN_INFO;
-
- static {
- GBeanInfoBuilder infoBuilder = GBeanInfoBuilder.createStatic(EjbModuleImplGBean.class, NameFactory.EJB_MODULE);
- infoBuilder.addReference("J2EEServer", J2EEServer.class);
- infoBuilder.addReference("J2EEApplication", J2EEApplication.class);
-
- infoBuilder.addAttribute("deploymentDescriptor", String.class, true);
-
- infoBuilder.addReference("EJBCollection", EJB.class);
-
- infoBuilder.addAttribute("classLoader", ClassLoader.class, false);
-
- infoBuilder.addReference("OpenEjbSystem", OpenEjbSystem.class);
- infoBuilder.addAttribute("ejbJarInfo", EjbJarInfo.class, true);
-
- infoBuilder.setConstructor(new String[]{
- "objectName",
- "J2EEServer",
- "J2EEApplication",
- "deploymentDescriptor",
- "EJBCollection",
- "classLoader",
- "OpenEjbSystem",
- "ejbJarInfo"
- });
-
- GBEAN_INFO = infoBuilder.getBeanInfo();
- }
-
- public static GBeanInfo getGBeanInfo() {
- return GBEAN_INFO;
- }
}
Modified: geronimo/server/trunk/plugins/openjpa2/geronimo-persistence-jpa20-builder/src/main/java/org/apache/geronimo/persistence/builder/PersistenceContextRefBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/openjpa2/geronimo-persistence-jpa20-builder/src/main/java/org/apache/geronimo/persistence/builder/PersistenceContextRefBuilder.java?rev=901935&r1=901934&r2=901935&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/openjpa2/geronimo-persistence-jpa20-builder/src/main/java/org/apache/geronimo/persistence/builder/PersistenceContextRefBuilder.java (original)
+++ geronimo/server/trunk/plugins/openjpa2/geronimo-persistence-jpa20-builder/src/main/java/org/apache/geronimo/persistence/builder/PersistenceContextRefBuilder.java Fri Jan 22 00:10:53 2010
@@ -139,7 +139,7 @@
PersistenceContextReference reference = new PersistenceContextReference(module.getConfigId(), persistenceUnitNameQuery, transactionScoped, properties);
- NamingBuilder.JNDI_KEY.get(componentContext).put(ENV + persistenceContextRefName, reference);
+ put(persistenceContextRefName, reference, NamingBuilder.JNDI_KEY.get(componentContext));
} catch (DeploymentException e) {
problems.add(e);
}
@@ -151,7 +151,7 @@
String persistenceContextRefName = gerPersistenceContextRef.getPersistenceContextRefName();
GerPersistenceContextTypeType.Enum persistenceContextType = gerPersistenceContextRef.getPersistenceContextType();
boolean transactionScoped = persistenceContextType == null || !persistenceContextType.equals(GerPersistenceContextTypeType.EXTENDED);
- Map properties = new HashMap();
+ Map<String, String> properties = new HashMap<String, String>();
addProperties(gerPersistenceContextRef, properties);
@@ -161,7 +161,7 @@
PersistenceContextReference reference = new PersistenceContextReference(module.getConfigId(), persistenceUnitNameQuery, transactionScoped, properties);
- getJndiContextMap(componentContext).put(ENV + persistenceContextRefName, reference);
+ put(persistenceContextRefName, reference, NamingBuilder.JNDI_KEY.get(componentContext));
} catch (DeploymentException e) {
problems.add(e);
}
Modified: geronimo/server/trunk/plugins/openjpa2/geronimo-persistence-jpa20-builder/src/main/java/org/apache/geronimo/persistence/builder/PersistenceUnitRefBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/openjpa2/geronimo-persistence-jpa20-builder/src/main/java/org/apache/geronimo/persistence/builder/PersistenceUnitRefBuilder.java?rev=901935&r1=901934&r2=901935&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/openjpa2/geronimo-persistence-jpa20-builder/src/main/java/org/apache/geronimo/persistence/builder/PersistenceUnitRefBuilder.java (original)
+++ geronimo/server/trunk/plugins/openjpa2/geronimo-persistence-jpa20-builder/src/main/java/org/apache/geronimo/persistence/builder/PersistenceUnitRefBuilder.java Fri Jan 22 00:10:53 2010
@@ -125,7 +125,7 @@
PersistenceUnitReference reference = new PersistenceUnitReference(module.getConfigId(), persistenceUnitNameQuery);
- NamingBuilder.JNDI_KEY.get(componentContext).put(ENV + persistenceUnitRefName, reference);
+ put(persistenceUnitRefName, reference, NamingBuilder.JNDI_KEY.get(componentContext));
} catch (DeploymentException e) {
problems.add(e);
}
@@ -143,7 +143,7 @@
PersistenceUnitReference reference = new PersistenceUnitReference(module.getConfigId(), persistenceUnitNameQuery);
- NamingBuilder.JNDI_KEY.get(componentContext).put(ENV + PersistenceUnitRefName, reference);
+ put(PersistenceUnitRefName, reference, NamingBuilder.JNDI_KEY.get(componentContext));
} catch (DeploymentException e) {
problems.add(e);
}
Modified: geronimo/server/trunk/plugins/tomcat/geronimo-tomcat7/src/main/java/org/apache/geronimo/tomcat/TomcatWebAppContext.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/tomcat/geronimo-tomcat7/src/main/java/org/apache/geronimo/tomcat/TomcatWebAppContext.java?rev=901935&r1=901934&r2=901935&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/tomcat/geronimo-tomcat7/src/main/java/org/apache/geronimo/tomcat/TomcatWebAppContext.java (original)
+++ geronimo/server/trunk/plugins/tomcat/geronimo-tomcat7/src/main/java/org/apache/geronimo/tomcat/TomcatWebAppContext.java Fri Jan 22 00:10:53 2010
@@ -22,6 +22,7 @@
import java.util.HashMap;
import java.util.Hashtable;
import java.util.Iterator;
+import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -33,6 +34,7 @@
import javax.transaction.TransactionManager;
import javax.transaction.UserTransaction;
+import org.apache.geronimo.j2ee.jndi.ApplicationJndi;
import org.apache.tomcat.InstanceManager;
import org.apache.catalina.Context;
import org.apache.catalina.LifecycleListener;
@@ -138,7 +140,7 @@
@ParamAttribute(name = "contextPath") String contextPath,
@ParamAttribute(name = "deploymentDescriptor") String originalSpecDD,
@ParamAttribute(name = "configurationBaseUrl") URL configurationBaseUrl,
- @ParamAttribute(name = "modulePath")String modulePath,
+ @ParamAttribute(name = "modulePath") String modulePath,
@ParamAttribute(name = "securityHolder") SecurityHolder securityHolder,
@ParamAttribute(name = "virtualServer") String virtualServer,
@ParamAttribute(name = "componentContext") Map<String, Object> componentContext,
@@ -164,6 +166,7 @@
@ParamReference(name = "ContextCustomizer") RuntimeCustomizer contextCustomizer,
@ParamReference(name = "J2EEServer") J2EEServer server,
@ParamReference(name = "J2EEApplication") J2EEApplication application,
+ @ParamReference(name = "ApplicationJndi") ApplicationJndi applicationJndi,
@ParamSpecial(type = SpecialAttributeType.kernel) Kernel kernel)
throws Exception {
assert classLoader != null;
@@ -200,7 +203,18 @@
this.securityHolder = securityHolder;
userTransaction = new GeronimoUserTransaction(transactionManager);
- this.componentContext = EnterpriseNamingContext.createEnterpriseNamingContext(componentContext, userTransaction, kernel, classLoader);
+ Set<javax.naming.Context> contexts = new LinkedHashSet<javax.naming.Context>(3);
+ javax.naming.Context localContext = EnterpriseNamingContext.livenReferences(componentContext, userTransaction, kernel, classLoader, "comp/");
+ contexts.add(localContext);
+ if (applicationJndi != null) {
+ if (applicationJndi.getApplicationContext() != null) {
+ contexts.add(applicationJndi.getApplicationContext());
+ }
+ if (applicationJndi.getGlobalContext() != null) {
+ contexts.add(applicationJndi.getGlobalContext());
+ }
+ }
+ this.componentContext = EnterpriseNamingContext.createEnterpriseNamingContext(contexts);
this.unshareableResources = unshareableResources;
this.applicationManagedSecurityResources = applicationManagedSecurityResources;
Modified: geronimo/server/trunk/plugins/tomcat/geronimo-tomcat7/src/test/java/org/apache/geronimo/tomcat/AbstractWebModuleTest.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/tomcat/geronimo-tomcat7/src/test/java/org/apache/geronimo/tomcat/AbstractWebModuleTest.java?rev=901935&r1=901934&r2=901935&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/tomcat/geronimo-tomcat7/src/test/java/org/apache/geronimo/tomcat/AbstractWebModuleTest.java (original)
+++ geronimo/server/trunk/plugins/tomcat/geronimo-tomcat7/src/test/java/org/apache/geronimo/tomcat/AbstractWebModuleTest.java Fri Jan 22 00:10:53 2010
@@ -20,7 +20,6 @@
import org.apache.geronimo.connector.outbound.connectiontracking.GeronimoTransactionListener;
import org.apache.geronimo.kernel.config.ConfigurationData;
import org.apache.geronimo.kernel.osgi.MockBundleContext;
-import org.apache.geronimo.kernel.osgi.MockBundle;
import org.apache.geronimo.kernel.repository.Artifact;
import org.apache.geronimo.security.SecurityServiceImpl;
import org.apache.geronimo.security.deploy.PrincipalInfo;
@@ -110,7 +109,7 @@
null,
null,
null,
- null);
+ null, null);
app.doStart();
return app;
}