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/24 04:58:25 UTC
svn commit: r902527 - in /geronimo/server/trunk/plugins: ./
connector-1_6/transaction-1_6/src/main/history/ j2ee/geronimo-j2ee/
j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/
j2ee/geronimo-web-2.5-builder/src/main/java/org/apache/geron...
Author: djencks
Date: Sun Jan 24 03:58:24 2010
New Revision: 902527
URL: http://svn.apache.org/viewvc?rev=902527&view=rev
Log:
GERONIMO-4996 GERONIMO-5025 separate jndi context setup from web app context since jsf needs it too. Hook up myfaces which now starts. Don't know if myfaces works
Added:
geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/ContextSource.java (with props)
geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/WebContextSource.java (with props)
Modified:
geronimo/server/trunk/plugins/connector-1_6/transaction-1_6/src/main/history/dependencies.xml
geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/pom.xml
geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web25/deployment/AbstractWebModuleBuilder.java
geronimo/server/trunk/plugins/j2ee/j2ee-server/src/main/history/dependencies.xml
geronimo/server/trunk/plugins/jetty8/geronimo-jetty8-builder/src/main/java/org/apache/geronimo/jetty8/deployment/JettyModuleBuilder.java
geronimo/server/trunk/plugins/jetty8/geronimo-jetty8/src/main/java/org/apache/geronimo/jetty8/WebAppContextWrapper.java
geronimo/server/trunk/plugins/jetty8/geronimo-jetty8/src/test/java/org/apache/geronimo/jetty8/AbstractWebModuleTest.java
geronimo/server/trunk/plugins/myfaces/geronimo-myfaces-builder/src/main/java/org/apache/geronimo/myfaces/deployment/MyFacesModuleBuilderExtension.java
geronimo/server/trunk/plugins/myfaces/geronimo-myfaces/src/main/java/org/apache/geronimo/myfaces/LifecycleProviderGBean.java
geronimo/server/trunk/plugins/myfaces/geronimo-myfaces/src/test/java/org/apache/geronimo/myfaces/BasicTest.java
geronimo/server/trunk/plugins/myfaces/myfaces/src/main/history/dependencies.xml
geronimo/server/trunk/plugins/pom.xml
geronimo/server/trunk/plugins/tomcat/geronimo-tomcat7/src/main/java/org/apache/geronimo/tomcat/TomcatWebAppContext.java
geronimo/server/trunk/plugins/tomcat/geronimo-tomcat7/src/test/java/org/apache/geronimo/tomcat/AbstractWebModuleTest.java
Modified: geronimo/server/trunk/plugins/connector-1_6/transaction-1_6/src/main/history/dependencies.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/connector-1_6/transaction-1_6/src/main/history/dependencies.xml?rev=902527&r1=902526&r2=902527&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/connector-1_6/transaction-1_6/src/main/history/dependencies.xml (original)
+++ geronimo/server/trunk/plugins/connector-1_6/transaction-1_6/src/main/history/dependencies.xml Sun Jan 24 03:58:24 2010
@@ -12,11 +12,6 @@
<type>jar</type>
</dependency>
<dependency>
- <groupId>org.apache.geronimo.components</groupId>
- <artifactId>geronimo-transaction</artifactId>
- <type>jar</type>
- </dependency>
- <dependency>
<groupId>org.apache.geronimo.configs</groupId>
<artifactId>j2ee-server</artifactId>
<type>car</type>
Modified: geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/pom.xml?rev=902527&r1=902526&r2=902527&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/pom.xml (original)
+++ geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/pom.xml Sun Jan 24 03:58:24 2010
@@ -54,6 +54,11 @@
</dependency>
<dependency>
+ <groupId>org.apache.geronimo.components</groupId>
+ <artifactId>geronimo-transaction</artifactId>
+ </dependency>
+
+ <dependency>
<groupId>org.apache.geronimo.framework</groupId>
<artifactId>geronimo-kernel</artifactId>
<version>${version}</version>
Added: geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/ContextSource.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/ContextSource.java?rev=902527&view=auto
==============================================================================
--- geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/ContextSource.java (added)
+++ geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/ContextSource.java Sun Jan 24 03:58:24 2010
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+
+package org.apache.geronimo.j2ee.jndi;
+
+import javax.naming.Context;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public interface ContextSource {
+
+ Context getContext();
+
+}
Propchange: geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/ContextSource.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/ContextSource.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/ContextSource.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/WebContextSource.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/WebContextSource.java?rev=902527&view=auto
==============================================================================
--- geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/WebContextSource.java (added)
+++ geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/WebContextSource.java Sun Jan 24 03:58:24 2010
@@ -0,0 +1,71 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+
+package org.apache.geronimo.j2ee.jndi;
+
+import org.apache.geronimo.transaction.GeronimoUserTransaction;
+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.kernel.Kernel;
+import org.apache.geronimo.naming.enc.EnterpriseNamingContext;
+
+import javax.naming.Context;
+import javax.naming.NamingException;
+import javax.transaction.TransactionManager;
+import java.util.LinkedHashSet;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * @version $Rev$ $Date$
+ */
+@GBean
+public class WebContextSource implements ContextSource {
+
+ private final Context context;
+
+ public WebContextSource(@ParamAttribute(name = "componentContext") Map<String, Object> componentContext,
+ @ParamReference(name = "TransactionManager") TransactionManager transactionManager,
+ @ParamReference(name = "ApplicationJndi") ApplicationJndi applicationJndi,
+ @ParamSpecial(type = SpecialAttributeType.classLoader) ClassLoader classLoader,
+ @ParamSpecial(type = SpecialAttributeType.kernel) Kernel kernel) throws NamingException {
+ GeronimoUserTransaction userTransaction = new GeronimoUserTransaction(transactionManager);
+ Set<Context> contexts = new LinkedHashSet<Context>(3);
+ 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.context = EnterpriseNamingContext.createEnterpriseNamingContext(contexts);
+ }
+
+ @Override
+ public Context getContext() {
+ return context;
+ }
+}
Propchange: geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/WebContextSource.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/WebContextSource.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/plugins/j2ee/geronimo-j2ee/src/main/java/org/apache/geronimo/j2ee/jndi/WebContextSource.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web25/deployment/AbstractWebModuleBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web25/deployment/AbstractWebModuleBuilder.java?rev=902527&r1=902526&r2=902527&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web25/deployment/AbstractWebModuleBuilder.java (original)
+++ geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web25/deployment/AbstractWebModuleBuilder.java Sun Jan 24 03:58:24 2010
@@ -45,6 +45,7 @@
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
import org.apache.geronimo.j2ee.jndi.JndiKey;
import org.apache.geronimo.j2ee.jndi.JndiScope;
+import org.apache.geronimo.j2ee.jndi.WebContextSource;
import org.apache.geronimo.kernel.GBeanAlreadyExistsException;
import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.kernel.Naming;
@@ -730,7 +731,18 @@
if (jndiContext.get(JndiScope.module) != null) {
compContext.putAll(jndiContext.get(JndiScope.module));
}
-
+ AbstractName contextSourceName = moduleContext.getNaming().createChildName(webModuleData.getAbstractName(), "ContextSource", "ContextSource");
+ GBeanData contextSourceData = new GBeanData(contextSourceName, WebContextSource.class);
+ contextSourceData.setAttribute("componentContext", compContext);
+ contextSourceData.setReferencePattern("ApplicationJndi", (AbstractName)earContext.getGeneralData().get(EARContext.APPLICATION_JNDI_NAME_KEY));
+ contextSourceData.setReferencePattern("TransactionManager", moduleContext.getTransactionManagerName());
+ try {
+ moduleContext.addGBean(contextSourceData);
+ } catch (GBeanAlreadyExistsException e) {
+ throw new DeploymentException("ContextSource for this webapp already present:" + webModuleData.getAbstractName(), e);
+ }
+ webModuleData.setReferencePattern("ContextSource", contextSourceName);
+
Holder holder = NamingBuilder.INJECTION_KEY.get(buildingContext);
webModule.getSharedContext().put(WebModule.WEB_APP_DATA, webModuleData);
@@ -752,8 +764,6 @@
addGBeanDependencies(earContext, webModuleData);
}
- webModuleData.setAttribute("componentContext", compContext);
- webModuleData.setReferencePattern("ApplicationJndi", (AbstractName)earContext.getGeneralData().get(EARContext.APPLICATION_JNDI_NAME_KEY));
webModuleData.setReferencePattern("TransactionManager", moduleContext.getTransactionManagerName());
webModuleData.setReferencePattern("TrackedConnectionAssociator", moduleContext.getConnectionTrackerName());
webModuleData.setAttribute("modulePath", webModule.isStandAlone() || webModule.getEarContext() != webModule.getRootEarContext()? null: webModule.getTargetPath());
Modified: geronimo/server/trunk/plugins/j2ee/j2ee-server/src/main/history/dependencies.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/j2ee-server/src/main/history/dependencies.xml?rev=902527&r1=902526&r2=902527&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/j2ee/j2ee-server/src/main/history/dependencies.xml (original)
+++ geronimo/server/trunk/plugins/j2ee/j2ee-server/src/main/history/dependencies.xml Sun Jan 24 03:58:24 2010
@@ -7,6 +7,11 @@
<type>car</type>
</module-id>
<dependency>
+ <groupId>org.apache.geronimo.components</groupId>
+ <artifactId>geronimo-transaction</artifactId>
+ <type>jar</type>
+ </dependency>
+ <dependency>
<groupId>org.apache.geronimo.framework</groupId>
<artifactId>rmi-naming</artifactId>
<type>car</type>
@@ -16,4 +21,9 @@
<artifactId>geronimo-j2ee</artifactId>
<type>jar</type>
</dependency>
+ <dependency>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-j2ee-connector_1.6_spec</artifactId>
+ <type>jar</type>
+ </dependency>
</plugin-artifact>
Modified: geronimo/server/trunk/plugins/jetty8/geronimo-jetty8-builder/src/main/java/org/apache/geronimo/jetty8/deployment/JettyModuleBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/jetty8/geronimo-jetty8-builder/src/main/java/org/apache/geronimo/jetty8/deployment/JettyModuleBuilder.java?rev=902527&r1=902526&r2=902527&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/jetty8/geronimo-jetty8-builder/src/main/java/org/apache/geronimo/jetty8/deployment/JettyModuleBuilder.java (original)
+++ geronimo/server/trunk/plugins/jetty8/geronimo-jetty8-builder/src/main/java/org/apache/geronimo/jetty8/deployment/JettyModuleBuilder.java Sun Jan 24 03:58:24 2010
@@ -21,22 +21,14 @@
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.Serializable;
+import java.lang.String;
import java.net.URL;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.TreeSet;
+import java.util.*;
import java.util.jar.JarFile;
import javax.management.ObjectName;
import javax.servlet.Servlet;
+
import org.apache.geronimo.common.DeploymentException;
import org.apache.geronimo.deployment.Deployable;
import org.apache.geronimo.deployment.DeployableBundle;
@@ -47,31 +39,12 @@
import org.apache.geronimo.deployment.service.EnvironmentBuilder;
import org.apache.geronimo.deployment.xbeans.EnvironmentType;
import org.apache.geronimo.deployment.xmlbeans.XmlBeansUtil;
-import org.apache.geronimo.gbean.AbstractName;
-import org.apache.geronimo.gbean.AbstractNameQuery;
-import org.apache.geronimo.gbean.GBeanData;
-import org.apache.geronimo.gbean.GBeanInfoBuilder;
-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.deployment.EARContext;
-import org.apache.geronimo.j2ee.deployment.Module;
-import org.apache.geronimo.j2ee.deployment.ModuleBuilderExtension;
-import org.apache.geronimo.j2ee.deployment.NamingBuilder;
-import org.apache.geronimo.j2ee.deployment.WebModule;
-import org.apache.geronimo.j2ee.deployment.WebServiceBuilder;
+import org.apache.geronimo.gbean.*;
+import org.apache.geronimo.gbean.annotation.*;
+import org.apache.geronimo.j2ee.deployment.*;
import org.apache.geronimo.j2ee.deployment.annotation.AnnotatedWebApp;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
-import org.apache.geronimo.jetty8.DefaultServletHolderWrapper;
-import org.apache.geronimo.jetty8.FilterHolderWrapper;
-import org.apache.geronimo.jetty8.Host;
-import org.apache.geronimo.jetty8.JettyFilterMapping;
-import org.apache.geronimo.jetty8.JspServletHolderWrapper;
-import org.apache.geronimo.jetty8.ServletHolderWrapper;
-import org.apache.geronimo.jetty8.WebAppContextWrapper;
+import org.apache.geronimo.jetty8.*;
import org.apache.geronimo.jetty8.security.AuthConfigProviderHandlerFactory;
import org.apache.geronimo.jetty8.security.BuiltInAuthMethod;
import org.apache.geronimo.jetty8.security.JettySecurityHandlerFactory;
@@ -79,10 +52,7 @@
import org.apache.geronimo.kernel.GBeanNotFoundException;
import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.kernel.Naming;
-import org.apache.geronimo.kernel.repository.Artifact;
-import org.apache.geronimo.kernel.repository.Dependency;
import org.apache.geronimo.kernel.repository.Environment;
-import org.apache.geronimo.kernel.repository.ImportType;
import org.apache.geronimo.kernel.util.JarUtils;
import org.apache.geronimo.naming.deployment.ENCConfigBuilder;
import org.apache.geronimo.naming.deployment.GBeanResourceEnvironmentBuilder;
@@ -103,26 +73,7 @@
import org.apache.geronimo.xbeans.geronimo.web.jetty.JettyWebAppDocument;
import org.apache.geronimo.xbeans.geronimo.web.jetty.JettyWebAppType;
import org.apache.geronimo.xbeans.geronimo.web.jetty.config.GerJettyDocument;
-import org.apache.geronimo.xbeans.javaee.DispatcherType;
-import org.apache.geronimo.xbeans.javaee.ErrorPageType;
-import org.apache.geronimo.xbeans.javaee.FilterMappingType;
-import org.apache.geronimo.xbeans.javaee.FilterType;
-import org.apache.geronimo.xbeans.javaee.FormLoginConfigType;
-import org.apache.geronimo.xbeans.javaee.JspConfigType;
-import org.apache.geronimo.xbeans.javaee.JspPropertyGroupType;
-import org.apache.geronimo.xbeans.javaee.ListenerType;
-import org.apache.geronimo.xbeans.javaee.LocaleEncodingMappingListType;
-import org.apache.geronimo.xbeans.javaee.LocaleEncodingMappingType;
-import org.apache.geronimo.xbeans.javaee.LoginConfigType;
-import org.apache.geronimo.xbeans.javaee.MimeMappingType;
-import org.apache.geronimo.xbeans.javaee.ParamValueType;
-import org.apache.geronimo.xbeans.javaee.ServletMappingType;
-import org.apache.geronimo.xbeans.javaee.ServletType;
-import org.apache.geronimo.xbeans.javaee.TaglibType;
-import org.apache.geronimo.xbeans.javaee.UrlPatternType;
-import org.apache.geronimo.xbeans.javaee.WebAppDocument;
-import org.apache.geronimo.xbeans.javaee.WebAppType;
-import org.apache.geronimo.xbeans.javaee.WelcomeFileListType;
+import org.apache.geronimo.xbeans.javaee.*;
import org.apache.xmlbeans.XmlException;
import org.apache.xmlbeans.XmlObject;
import org.osgi.framework.Bundle;
Modified: geronimo/server/trunk/plugins/jetty8/geronimo-jetty8/src/main/java/org/apache/geronimo/jetty8/WebAppContextWrapper.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/jetty8/geronimo-jetty8/src/main/java/org/apache/geronimo/jetty8/WebAppContextWrapper.java?rev=902527&r1=902526&r2=902527&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/jetty8/geronimo-jetty8/src/main/java/org/apache/geronimo/jetty8/WebAppContextWrapper.java (original)
+++ geronimo/server/trunk/plugins/jetty8/geronimo-jetty8/src/main/java/org/apache/geronimo/jetty8/WebAppContextWrapper.java Sun Jan 24 03:58:24 2010
@@ -25,6 +25,7 @@
import javax.naming.Context;
import javax.security.auth.Subject;
import javax.transaction.TransactionManager;
+import javax.transaction.UserTransaction;
import org.apache.geronimo.connector.outbound.connectiontracking.TrackedConnectionAssociator;
import org.apache.geronimo.gbean.GBeanLifecycle;
@@ -37,7 +38,7 @@
import org.apache.geronimo.j2ee.annotation.Holder;
import org.apache.geronimo.j2ee.annotation.LifecycleMethod;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
-import org.apache.geronimo.j2ee.jndi.ApplicationJndi;
+import org.apache.geronimo.j2ee.jndi.ContextSource;
import org.apache.geronimo.j2ee.management.impl.InvalidObjectNameException;
import org.apache.geronimo.jetty8.handler.GeronimoWebAppContext;
import org.apache.geronimo.jetty8.handler.IntegrationContext;
@@ -48,7 +49,6 @@
import org.apache.geronimo.management.J2EEServer;
import org.apache.geronimo.management.geronimo.WebContainer;
import org.apache.geronimo.management.geronimo.WebModule;
-import org.apache.geronimo.naming.enc.EnterpriseNamingContext;
import org.apache.geronimo.security.jacc.RunAsSource;
import org.apache.geronimo.transaction.GeronimoUserTransaction;
import org.eclipse.jetty.http.MimeTypes;
@@ -100,7 +100,6 @@
@ParamAttribute(name = "contextPath") String contextPath,
@ParamAttribute(name = "deploymentDescriptor") String originalSpecDD,
@ParamAttribute(name = "modulePath") String modulePath,
- @ParamAttribute(name = "componentContext") Map<String, Object> componentContext,
@ParamSpecial(type = SpecialAttributeType.classLoader) ClassLoader classLoader,
@ParamSpecial(type = SpecialAttributeType.bundle) Bundle bundle,
@ParamAttribute(name = "configurationBaseUrl") URL configurationBaseUrl,
@@ -129,20 +128,19 @@
@ParamAttribute(name = "holder") Holder holder,
@ParamReference(name = "Host") Host host,
- @ParamReference(name = "TransactionManager") TransactionManager transactionManager,
@ParamReference(name = "TrackedConnectionAssociator") TrackedConnectionAssociator trackedConnectionAssociator,
@ParamReference(name = "JettyContainer") JettyContainer jettyContainer,
@ParamReference(name = "ContextCustomizer") RuntimeCustomizer contextCustomizer,
@ParamReference(name = "J2EEServer") J2EEServer server,
@ParamReference(name = "J2EEApplication") J2EEApplication application,
- @ParamReference(name = "ApplicationJndi") ApplicationJndi applicationJndi,
+ @ParamReference(name = "ContextSource") ContextSource contextSource,
+ @ParamReference(name = "TransactionManager") TransactionManager transactionManager,
@ParamSpecial(type = SpecialAttributeType.kernel) Kernel kernel) throws Exception {
- assert componentContext != null;
+ assert contextSource != null;
assert classLoader != null;
assert configurationBaseUrl != null;
- assert transactionManager != null;
assert trackedConnectionAssociator != null;
assert jettyContainer != null;
if (contextPath == null || !contextPath.startsWith("/")) {
@@ -178,20 +176,8 @@
ServletHandler servletHandler = new ServletHandler();
- //wrap the web app context with the jndi handler
- GeronimoUserTransaction userTransaction = new GeronimoUserTransaction(transactionManager);
- Set<Context> contexts = new LinkedHashSet<Context>(3);
- 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.componentContext = contextSource.getContext();
+ UserTransaction userTransaction = new GeronimoUserTransaction(transactionManager);
integrationContext = new IntegrationContext(this.componentContext, unshareableResources, applicationManagedSecurityResources, trackedConnectionAssociator, userTransaction, bundle);
webAppContext = new GeronimoWebAppContext(securityHandler, sessionHandler, servletHandler, null, integrationContext, classLoader, modulePath);
webAppContext.setContextPath(contextPath);
Modified: geronimo/server/trunk/plugins/jetty8/geronimo-jetty8/src/test/java/org/apache/geronimo/jetty8/AbstractWebModuleTest.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/jetty8/geronimo-jetty8/src/test/java/org/apache/geronimo/jetty8/AbstractWebModuleTest.java?rev=902527&r1=902526&r2=902527&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/jetty8/geronimo-jetty8/src/test/java/org/apache/geronimo/jetty8/AbstractWebModuleTest.java (original)
+++ geronimo/server/trunk/plugins/jetty8/geronimo-jetty8/src/test/java/org/apache/geronimo/jetty8/AbstractWebModuleTest.java Sun Jan 24 03:58:24 2010
@@ -37,6 +37,8 @@
import org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator;
import org.apache.geronimo.connector.outbound.connectiontracking.GeronimoTransactionListener;
+import org.apache.geronimo.j2ee.jndi.ContextSource;
+import org.apache.geronimo.j2ee.jndi.WebContextSource;
import org.apache.geronimo.jetty8.connector.HTTPSocketConnector;
import org.apache.geronimo.jetty8.security.SecurityHandlerFactory;
import org.apache.geronimo.jetty8.security.ServerAuthenticationGBean;
@@ -139,11 +141,15 @@
}, loginService);
}
String contextPath = "/test";
+ ContextSource contextSource = new WebContextSource(Collections.<String, Object>emptyMap(),
+ transactionManager,
+ null,
+ cl,
+ null);
WebAppContextWrapper app = new WebAppContextWrapper(null,
contextPath,
null,
null,
- Collections.<String, Object>emptyMap(),
cl,
bundle,
new URL(configurationBaseURL, uriString),
@@ -167,13 +173,13 @@
runAsSource,
null,
null,
- transactionManager,
connectionTrackingCoordinator,
container,
null,
null,
null,
- null, null);
+ contextSource,
+ transactionManager, null);
app.doStart();
return app;
}
Modified: geronimo/server/trunk/plugins/myfaces/geronimo-myfaces-builder/src/main/java/org/apache/geronimo/myfaces/deployment/MyFacesModuleBuilderExtension.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/myfaces/geronimo-myfaces-builder/src/main/java/org/apache/geronimo/myfaces/deployment/MyFacesModuleBuilderExtension.java?rev=902527&r1=902526&r2=902527&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/myfaces/geronimo-myfaces-builder/src/main/java/org/apache/geronimo/myfaces/deployment/MyFacesModuleBuilderExtension.java (original)
+++ geronimo/server/trunk/plugins/myfaces/geronimo-myfaces-builder/src/main/java/org/apache/geronimo/myfaces/deployment/MyFacesModuleBuilderExtension.java Sun Jan 24 03:58:24 2010
@@ -46,6 +46,7 @@
import org.apache.geronimo.j2ee.deployment.NamingBuilder;
import org.apache.geronimo.j2ee.deployment.WebModule;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
+import org.apache.geronimo.j2ee.jndi.JndiKey;
import org.apache.geronimo.kernel.GBeanAlreadyExistsException;
import org.apache.geronimo.kernel.Naming;
import org.apache.geronimo.kernel.config.Configuration;
@@ -146,7 +147,7 @@
buildingContext.put(NamingBuilder.GBEAN_NAME_KEY, moduleName);
//use the same jndi context as the web app
- Map compContext = NamingBuilder.JNDI_KEY.get(module.getSharedContext());
+ Map<JndiKey, Map<String, Object>> compContext = NamingBuilder.JNDI_KEY.get(module.getSharedContext());
buildingContext.put(NamingBuilder.JNDI_KEY, compContext);
//use the same holder object as the web app.
@@ -155,7 +156,7 @@
XmlObject jettyWebApp = webModule.getVendorDD();
- Configuration earConfiguration = earContext.getConfiguration();
+// Configuration earConfiguration = earContext.getConfiguration();
ClassFinder classFinder = createMyFacesClassFinder(webApp, webModule);
webModule.setClassFinder(classFinder);
@@ -163,9 +164,9 @@
namingBuilders.buildNaming(webApp, jettyWebApp, webModule, buildingContext);
AbstractName providerName = moduleContext.getNaming().createChildName(moduleName, "jsf-lifecycle", "jsf");
- GBeanData providerData = new GBeanData(providerName, LifecycleProviderGBean.GBEAN_INFO);
+ GBeanData providerData = new GBeanData(providerName, LifecycleProviderGBean.class);
providerData.setAttribute("holder", holder);
- providerData.setAttribute("componentContext", compContext);
+ providerData.setReferencePatterns("ContextSource", webAppData.getReferencePatterns("ContextSource"));
providerData.setReferencePattern("LifecycleProviderFactory", providerFactoryNameQuery);
try {
moduleContext.addGBean(providerData);
Modified: geronimo/server/trunk/plugins/myfaces/geronimo-myfaces/src/main/java/org/apache/geronimo/myfaces/LifecycleProviderGBean.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/myfaces/geronimo-myfaces/src/main/java/org/apache/geronimo/myfaces/LifecycleProviderGBean.java?rev=902527&r1=902526&r2=902527&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/myfaces/geronimo-myfaces/src/main/java/org/apache/geronimo/myfaces/LifecycleProviderGBean.java (original)
+++ geronimo/server/trunk/plugins/myfaces/geronimo-myfaces/src/main/java/org/apache/geronimo/myfaces/LifecycleProviderGBean.java Sun Jan 24 03:58:24 2010
@@ -26,10 +26,11 @@
import javax.naming.NamingException;
import javax.naming.Context;
+import org.apache.geronimo.gbean.annotation.*;
import org.apache.myfaces.config.annotation.LifecycleProvider;
import org.apache.geronimo.j2ee.annotation.Holder;
import org.apache.geronimo.j2ee.annotation.LifecycleMethod;
-import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
+import org.apache.geronimo.j2ee.jndi.ContextSource;
import org.apache.geronimo.gbean.GBeanLifecycle;
import org.apache.geronimo.gbean.GBeanInfo;
import org.apache.geronimo.gbean.GBeanInfoBuilder;
@@ -39,6 +40,7 @@
/**
* @version $Rev$ $Date$
*/
+@GBean
public class LifecycleProviderGBean implements LifecycleProvider, GBeanLifecycle {
private final Holder holder;
@@ -47,10 +49,14 @@
private final ClassLoader classLoader;
- public LifecycleProviderGBean(Holder holder, Map componentContext, LifecycleProviderFactorySource factory, Kernel kernel, ClassLoader classLoader) throws NamingException {
+ public LifecycleProviderGBean(@ParamAttribute(name="holder") Holder holder,
+ @ParamReference(name="ContextSource", namingType = "Context") ContextSource contextSource,
+ @ParamReference(name="LifecycleProviderFactory") LifecycleProviderFactorySource factory,
+ @ParamSpecial(type = SpecialAttributeType.kernel)Kernel kernel,
+ @ParamSpecial(type=SpecialAttributeType.classLoader)ClassLoader classLoader) throws NamingException {
this.holder = holder;
// GeronimoUserTransaction userTransaction = new GeronimoUserTransaction(transactionManager);
- context = EnterpriseNamingContext.createEnterpriseNamingContext(componentContext, null, kernel, classLoader);
+ context = contextSource.getContext();
this.factory = factory.getLifecycleProviderFactory();
this.classLoader = classLoader;
}
@@ -84,24 +90,4 @@
doStop();
}
- public static final GBeanInfo GBEAN_INFO;
-
- static {
- GBeanInfoBuilder infoBuilder = GBeanInfoBuilder.createStatic(LifecycleProviderGBean.class, GBeanInfoBuilder.DEFAULT_J2EE_TYPE);
- infoBuilder.addAttribute("holder", Holder.class, true);
- infoBuilder.addAttribute("componentContext", Map.class, true);
-
- infoBuilder.addReference("LifecycleProviderFactory", LifecycleProviderFactorySource.class);
-// infoBuilder.addReference("TransactionManager", TransactionManager.class);
- infoBuilder.addAttribute("kernel", Kernel.class, false);
- infoBuilder.addAttribute("classLoader", ClassLoader.class, false);
-
- infoBuilder.setConstructor(new String[] {"holder", "componentContext", "LifecycleProviderFactory", "kernel", "classLoader"});
-
- GBEAN_INFO = infoBuilder.getBeanInfo();
- }
-
- public static GBeanInfo getGBeanInfo() {
- return GBEAN_INFO;
- }
}
Modified: geronimo/server/trunk/plugins/myfaces/geronimo-myfaces/src/test/java/org/apache/geronimo/myfaces/BasicTest.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/myfaces/geronimo-myfaces/src/test/java/org/apache/geronimo/myfaces/BasicTest.java?rev=902527&r1=902526&r2=902527&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/myfaces/geronimo-myfaces/src/test/java/org/apache/geronimo/myfaces/BasicTest.java (original)
+++ geronimo/server/trunk/plugins/myfaces/geronimo-myfaces/src/test/java/org/apache/geronimo/myfaces/BasicTest.java Sun Jan 24 03:58:24 2010
@@ -21,6 +21,7 @@
package org.apache.geronimo.myfaces;
import junit.framework.TestCase;
+import org.apache.geronimo.gbean.GBeanData;
import org.apache.geronimo.gbean.GBeanInfo;
/**
@@ -36,7 +37,7 @@
}
public void testLifecycleProvider() throws Exception {
- GBeanInfo gBeanInfo = LifecycleProviderGBean.getGBeanInfo();
+ GBeanData gBeanInfo = new GBeanData(LifecycleProviderGBean.class);
}
}
Modified: geronimo/server/trunk/plugins/myfaces/myfaces/src/main/history/dependencies.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/myfaces/myfaces/src/main/history/dependencies.xml?rev=902527&r1=902526&r2=902527&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/myfaces/myfaces/src/main/history/dependencies.xml (original)
+++ geronimo/server/trunk/plugins/myfaces/myfaces/src/main/history/dependencies.xml Sun Jan 24 03:58:24 2010
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<plugin-artifact xmlns="http://geronimo.apache.org/xml/ns/plugins-1.3" xmlns:ns2="http://geronimo.apache.org/xml/ns/attributes-1.2">
+<plugin-artifact xmlns:ns2="http://geronimo.apache.org/xml/ns/attributes-1.2" xmlns="http://geronimo.apache.org/xml/ns/plugins-1.3">
<module-id>
<groupId>org.apache.geronimo.configs</groupId>
<artifactId>myfaces</artifactId>
@@ -43,12 +43,12 @@
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-el_1.0_spec</artifactId>
+ <artifactId>geronimo-el_2.2_spec</artifactId>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-jsp_2.1-MR2_spec</artifactId>
+ <artifactId>geronimo-jsp_2.2_spec</artifactId>
<type>jar</type>
</dependency>
<dependency>
Modified: geronimo/server/trunk/plugins/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/pom.xml?rev=902527&r1=902526&r2=902527&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/pom.xml (original)
+++ geronimo/server/trunk/plugins/pom.xml Sun Jan 24 03:58:24 2010
@@ -120,7 +120,7 @@
<module>jasper</module>
<module>javamail</module>
<module>jaxws</module>
- <!--<module>myfaces</module>-->
+ <module>myfaces</module>
<module>openejb</module>
<module>openjpa2</module>
<!-- <module>openwebbeans</module>-->
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=902527&r1=902526&r2=902527&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 Sun Jan 24 03:58:24 2010
@@ -56,6 +56,7 @@
import org.apache.geronimo.j2ee.RuntimeCustomizer;
import org.apache.geronimo.j2ee.annotation.Holder;
import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
+import org.apache.geronimo.j2ee.jndi.ContextSource;
import org.apache.geronimo.j2ee.management.impl.InvalidObjectNameException;
import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.kernel.ObjectNameUtil;
@@ -143,7 +144,6 @@
@ParamAttribute(name = "modulePath") String modulePath,
@ParamAttribute(name = "securityHolder") SecurityHolder securityHolder,
@ParamAttribute(name = "virtualServer") String virtualServer,
- @ParamAttribute(name = "componentContext") Map<String, Object> componentContext,
@ParamAttribute(name = "unshareableResources") Set<String> unshareableResources,
@ParamAttribute(name = "applicationManagedSecurityResources") Set<String> applicationManagedSecurityResources,
@ParamReference(name = "TransactionManager") TransactionManager transactionManager,
@@ -166,7 +166,7 @@
@ParamReference(name = "ContextCustomizer") RuntimeCustomizer contextCustomizer,
@ParamReference(name = "J2EEServer") J2EEServer server,
@ParamReference(name = "J2EEApplication") J2EEApplication application,
- @ParamReference(name = "ApplicationJndi") ApplicationJndi applicationJndi,
+ @ParamReference(name = "ContextSource") ContextSource contextSource,
@ParamSpecial(type = SpecialAttributeType.kernel) Kernel kernel)
throws Exception {
assert classLoader != null;
@@ -175,7 +175,7 @@
assert modulePath != null;
assert transactionManager != null;
assert trackedConnectionAssociator != null;
- assert componentContext != null;
+ assert contextSource != null;
assert container != null;
if (null != clusteredValveRetriever) {
@@ -202,19 +202,8 @@
this.virtualServer = virtualServer;
this.securityHolder = securityHolder;
- userTransaction = new GeronimoUserTransaction(transactionManager);
- 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.componentContext = contextSource.getContext();
+ this.userTransaction = new GeronimoUserTransaction(transactionManager);
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=902527&r1=902526&r2=902527&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 Sun Jan 24 03:58:24 2010
@@ -18,6 +18,8 @@
import org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator;
import org.apache.geronimo.connector.outbound.connectiontracking.GeronimoTransactionListener;
+import org.apache.geronimo.j2ee.jndi.ContextSource;
+import org.apache.geronimo.j2ee.jndi.WebContextSource;
import org.apache.geronimo.kernel.config.ConfigurationData;
import org.apache.geronimo.kernel.osgi.MockBundleContext;
import org.apache.geronimo.kernel.repository.Artifact;
@@ -77,6 +79,11 @@
URI locationURI = configurationBaseURL.toURI().resolve(relativeWebAppRoot);
MockBundleContext bundleContext = new MockBundleContext(getClass().getClassLoader(), locationURI.toString(), new HashMap<Artifact, ConfigurationData>(), null);
bundle = bundleContext.getBundle();
+ ContextSource contextSource = new WebContextSource(Collections.<String, Object>emptyMap(),
+ transactionManager,
+ null,
+ cl,
+ null);
TomcatWebAppContext app = new TomcatWebAppContext(cl,
bundle,
null,
@@ -86,7 +93,6 @@
"",
securityHolder,
null,
- Collections.EMPTY_MAP,
null,
null,
transactionManager,
@@ -109,7 +115,8 @@
null,
null,
null,
- null, null);
+ contextSource,
+ null);
app.doStart();
return app;
}