[jboss-cvs] JBossAS SVN: r82909 - trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Jan 15 10:39:29 EST 2009
Author: remy.maucherat at jboss.com
Date: 2009-01-15 10:39:29 -0500 (Thu, 15 Jan 2009)
New Revision: 82909
Modified:
trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/JBossContextConfig.java
trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployment.java
trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatService.java
Log:
- Remove old code (the new one works fine).
Modified: trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/JBossContextConfig.java
===================================================================
--- trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/JBossContextConfig.java 2009-01-15 15:38:03 UTC (rev 82908)
+++ trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/JBossContextConfig.java 2009-01-15 15:39:29 UTC (rev 82909)
@@ -526,11 +526,6 @@
*/
protected void init() {
- if (TomcatService.OLD_CODE) {
- super.init();
- return;
- }
-
context.setConfigured(false);
ok = true;
Modified: trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployment.java
===================================================================
--- trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployment.java 2009-01-15 15:38:03 UTC (rev 82908)
+++ trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployment.java 2009-01-15 15:39:29 UTC (rev 82909)
@@ -22,9 +22,7 @@
package org.jboss.web.tomcat.service.deployers;
import java.io.File;
-import java.io.FileOutputStream;
import java.io.IOException;
-import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLDecoder;
@@ -193,64 +191,7 @@
Registry.getRegistry(null, null).registerComponent(context, objectName, config.getContextClassName());
- if (TomcatService.OLD_CODE)
- {
- String ctxConfig = null;
- File warFile = new File(url.getFile());
- if (warFile.isDirectory() == false)
- {
- // Using VFS access
- VFSDirContext resources = new VFSDirContext();
- resources.setVirtualFile(webApp.getDeploymentUnit().getFile(""));
- context.setResources(resources);
- // Find META-INF/context.xml
- VirtualFile file = webApp.getDeploymentUnit().getFile(CONTEXT_CONFIG_FILE);
- if (file != null)
- {
- // Copy the META-INF/context.xml from the VFS to the temp folder
- InputStream is = file.openStream();
- FileOutputStream fos = null;
- try
- {
- byte[] buffer = new byte[512];
- int bytes;
- // FIXME: use JBoss'temp folder instead
- File tempFile = File.createTempFile("context-", ".xml");
- tempFile.deleteOnExit();
- fos = new FileOutputStream(tempFile);
- while ((bytes = is.read(buffer)) > 0)
- {
- fos.write(buffer, 0, bytes);
- }
- ctxConfig = tempFile.getAbsolutePath();
- }
- finally
- {
- is.close();
- if (fos != null)
- {
- fos.close();
- }
- }
- }
- }
- else
- {
- // Using direct filesystem access: no operation needed
- // Find META-INF/context.xml
- File webDD = new File(warFile, CONTEXT_CONFIG_FILE);
- if (webDD.exists() == true)
- {
- ctxConfig = webDD.getAbsolutePath();
- }
- }
-
- context.setConfigFile(ctxConfig);
- }
- else
- {
- context.setConfigFile(CONTEXT_CONFIG_FILE);
- }
+ context.setConfigFile(CONTEXT_CONFIG_FILE);
context.setInstanceManager(injectionContainer);
context.setDocBase(url.getFile());
context.setDefaultContextXml("context.xml");
Modified: trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatService.java
===================================================================
--- trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatService.java 2009-01-15 15:38:03 UTC (rev 82908)
+++ trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatService.java 2009-01-15 15:39:29 UTC (rev 82909)
@@ -29,7 +29,6 @@
import java.util.Iterator;
import java.util.List;
-import javax.management.Attribute;
import javax.management.MBeanServer;
import javax.management.Notification;
import javax.management.NotificationListener;
@@ -104,8 +103,6 @@
this.tomcatDeployer = tomcatDeployer;
}
- public static boolean OLD_CODE = false;
-
// In our lifecycle, we invoke the webserver lifecycle-related operations
// in the TomcatDeployer
@@ -128,185 +125,167 @@
String objectNameS = tomcatDeployer.getDomain() + ":type=server";
ObjectName objectName = new ObjectName(objectNameS);
- if (OLD_CODE) {
+ // Parse main server.xml
+ // FIXME: this could be done somewhere else
+ SchemaBinding schema = JBossXBBuilder.build(ServerMetaData.class);
+ Unmarshaller u = UnmarshallerFactory.newInstance().newUnmarshaller();
+ u.setSchemaValidation(false);
+ u.setValidation(false);
+ u.setEntityResolver(new JBossEntityResolver());
+ InputStream is = null;
+ ServerMetaData serverMetaData = null;
+ try {
+ File configFile = new File(tomcatDeployer.getConfigFile());
+ if (configFile.exists())
+ {
+ is = new FileInputStream(configFile);
+ }
+ else
+ {
+ is = getClass().getClassLoader().getResourceAsStream(tomcatDeployer.getConfigFile());
+ }
+ if (is == null) {
+ log.error("Could not read configured server.xml (will try default): " + tomcatDeployer.getConfigFile());
+ is = getClass().getClassLoader().getResourceAsStream("server.xml");
+ }
+ serverMetaData = ServerMetaData.class.cast(u.unmarshal(is, schema));
+ } finally {
+ if (is != null) {
+ try {
+ is.close();
+ } catch (IOException e) {
+ // Ignore
+ }
+ }
+ }
- // Set the modeler Registry MBeanServer to the that of the tomcat service
- Registry.getRegistry().setMBeanServer(server);
+ // FIXME: could try to do stuff with EngineConfig and HostConfig, although neither
+ // should be useful in JBoss
- Registry.getRegistry().registerComponent(Class.forName("org.apache.catalina.startup.Catalina").newInstance(),
- objectName, "org.apache.catalina.startup.Catalina");
+ // Create the Catalina instance
+ Catalina catalina = new Catalina();
+ catalina.setCatalinaHome(System.getProperty("jboss.server.home.dir"));
+ catalina.setUseNaming(false);
+ catalina.setUseShutdownHook(false);
+ catalina.setAwait(false);
+ catalina.setRedirectStreams(false);
- server.setAttribute(objectName, new Attribute("catalinaHome", System.getProperty("jboss.server.home.dir")));
- server.setAttribute(objectName, new Attribute("configFile", tomcatDeployer.getConfigFile()));
- server.setAttribute(objectName, new Attribute("useNaming", new Boolean(false)));
- server.setAttribute(objectName, new Attribute("useShutdownHook", new Boolean(false)));
- server.setAttribute(objectName, new Attribute("await", new Boolean(false)));
- server.setAttribute(objectName, new Attribute("redirectStreams", new Boolean(false)));
+ // Set the modeler Registry MBeanServer to the that of the tomcat service
+ Registry.getRegistry(null, null).setMBeanServer(server);
+ // Register the Catalina instance
+ Registry.getRegistry(null, null).registerComponent(catalina, objectName, "org.apache.catalina.startup.Catalina");
- } else {
-
- // Parse main server.xml
- // FIXME: this could be done somewhere else
- SchemaBinding schema = JBossXBBuilder.build(ServerMetaData.class);
- Unmarshaller u = UnmarshallerFactory.newInstance().newUnmarshaller();
- u.setSchemaValidation(false);
- u.setValidation(false);
- u.setEntityResolver(new JBossEntityResolver());
- InputStream is = null;
- ServerMetaData serverMetaData = null;
- try {
- File configFile = new File(tomcatDeployer.getConfigFile());
- if (configFile.exists())
- {
- is = new FileInputStream(configFile);
- }
- else
- {
- is = getClass().getClassLoader().getResourceAsStream(tomcatDeployer.getConfigFile());
- }
- if (is == null) {
- log.error("Could not read configured server.xml (will try default): " + tomcatDeployer.getConfigFile());
- is = getClass().getClassLoader().getResourceAsStream("server.xml");
- }
- serverMetaData = ServerMetaData.class.cast(u.unmarshal(is, schema));
- } finally {
- if (is != null) {
- try {
- is.close();
- } catch (IOException e) {
- // Ignore
- }
- }
- }
-
- // FIXME: could try to do stuff with EngineConfig and HostConfig, although neither
- // should be useful in JBoss
-
- // Create the Catalina instance
- Catalina catalina = new Catalina();
- catalina.setCatalinaHome(System.getProperty("jboss.server.home.dir"));
- catalina.setUseNaming(false);
- catalina.setUseShutdownHook(false);
- catalina.setAwait(false);
- catalina.setRedirectStreams(false);
-
- // Set the modeler Registry MBeanServer to the that of the tomcat service
- Registry.getRegistry(null, null).setMBeanServer(server);
- // Register the Catalina instance
- Registry.getRegistry(null, null).registerComponent(catalina, objectName, "org.apache.catalina.startup.Catalina");
-
- // Use the server.xml metadata to create a Server instance and assign it to the Catalina instance
-
- // Server
- org.apache.catalina.Server catalinaServer =
- (org.apache.catalina.Server) getInstance(serverMetaData, "org.apache.catalina.core.StandardServer");
- addLifecycleListeners(catalinaServer, serverMetaData.getListeners());
-
- // Server/Service
- if (serverMetaData.getServices() == null)
+ // Use the server.xml metadata to create a Server instance and assign it to the Catalina instance
+
+ // Server
+ org.apache.catalina.Server catalinaServer =
+ (org.apache.catalina.Server) getInstance(serverMetaData, "org.apache.catalina.core.StandardServer");
+ addLifecycleListeners(catalinaServer, serverMetaData.getListeners());
+
+ // Server/Service
+ if (serverMetaData.getServices() == null)
+ {
+ throw new IllegalArgumentException("No services");
+ }
+ Iterator<ServiceMetaData> serviceMetaDatas = serverMetaData.getServices().iterator();
+ while (serviceMetaDatas.hasNext())
+ {
+ ServiceMetaData serviceMetaData = serviceMetaDatas.next();
+ org.apache.catalina.Service service =
+ (org.apache.catalina.Service) getInstance(serviceMetaData, "org.apache.catalina.core.StandardService");
+ addLifecycleListeners(service, serviceMetaData.getListeners());
+ service.setName(serviceMetaData.getName());
+ service.setServer(catalinaServer);
+ catalinaServer.addService(service);
+
+ // Server/Service/Executor
+ // FIXME
+
+ // Server/Service/Connector
+ if (serviceMetaData.getConnectors() != null)
{
- throw new IllegalArgumentException("No services");
- }
- Iterator<ServiceMetaData> serviceMetaDatas = serverMetaData.getServices().iterator();
- while (serviceMetaDatas.hasNext())
- {
- ServiceMetaData serviceMetaData = serviceMetaDatas.next();
- org.apache.catalina.Service service =
- (org.apache.catalina.Service) getInstance(serviceMetaData, "org.apache.catalina.core.StandardService");
- addLifecycleListeners(service, serviceMetaData.getListeners());
- service.setName(serviceMetaData.getName());
- service.setServer(catalinaServer);
- catalinaServer.addService(service);
-
- // Server/Service/Executor
- // FIXME
-
- // Server/Service/Connector
- if (serviceMetaData.getConnectors() != null)
+ Iterator<ConnectorMetaData> connectorMetaDatas = serviceMetaData.getConnectors().iterator();
+ while (connectorMetaDatas.hasNext())
{
- Iterator<ConnectorMetaData> connectorMetaDatas = serviceMetaData.getConnectors().iterator();
- while (connectorMetaDatas.hasNext())
+ ConnectorMetaData connectorMetaData = connectorMetaDatas.next();
+ Connector connector = new Connector(connectorMetaData.getProtocol());
+ if (connectorMetaData.getAttributes() != null)
{
- ConnectorMetaData connectorMetaData = connectorMetaDatas.next();
- Connector connector = new Connector(connectorMetaData.getProtocol());
- if (connectorMetaData.getAttributes() != null)
+ Iterator<QName> names = connectorMetaData.getAttributes().keySet().iterator();
+ while (names.hasNext())
{
- Iterator<QName> names = connectorMetaData.getAttributes().keySet().iterator();
- while (names.hasNext())
- {
- QName name = names.next();
- String value = (String) connectorMetaData.getAttributes().get(name);
- // FIXME: This should be done by XB
- value = StringPropertyReplacer.replaceProperties(value);
- IntrospectionUtils.setProperty(connector, name.getLocalPart(), value);
- }
+ QName name = names.next();
+ String value = (String) connectorMetaData.getAttributes().get(name);
+ // FIXME: This should be done by XB
+ value = StringPropertyReplacer.replaceProperties(value);
+ IntrospectionUtils.setProperty(connector, name.getLocalPart(), value);
}
- service.addConnector(connector);
}
+ service.addConnector(connector);
}
-
- // Server/Service/Engine
- EngineMetaData engineMetaData = serviceMetaData.getEngine();
- org.apache.catalina.Engine engine =
- (org.apache.catalina.Engine) getInstance(engineMetaData, "org.apache.catalina.core.StandardEngine");
- addLifecycleListeners(engine, engineMetaData.getListeners());
- engine.setName(engineMetaData.getName());
- // FIXME: This should be done by XB
- if (engineMetaData.getJvmRoute() != null) {
- engine.setJvmRoute(StringPropertyReplacer.replaceProperties(engineMetaData.getJvmRoute()));
- }
- //engine.setJvmRoute(engineMetaData.getJvmRoute());
- engine.setDefaultHost(engineMetaData.getDefaultHost());
- service.setContainer(engine);
-
- // Server/Service/Engine/Realm
- if (engineMetaData.getRealm() != null) {
- engine.setRealm((org.apache.catalina.Realm) getInstance(engineMetaData.getRealm(), null));
- }
-
- // Server/Service/Engine/Valve
- addValves(engine, engineMetaData.getValves());
-
- // Server/Service/Engine/Host
- if (engineMetaData.getHosts() != null)
+ }
+
+ // Server/Service/Engine
+ EngineMetaData engineMetaData = serviceMetaData.getEngine();
+ org.apache.catalina.Engine engine =
+ (org.apache.catalina.Engine) getInstance(engineMetaData, "org.apache.catalina.core.StandardEngine");
+ addLifecycleListeners(engine, engineMetaData.getListeners());
+ engine.setName(engineMetaData.getName());
+ // FIXME: This should be done by XB
+ if (engineMetaData.getJvmRoute() != null) {
+ engine.setJvmRoute(StringPropertyReplacer.replaceProperties(engineMetaData.getJvmRoute()));
+ }
+ //engine.setJvmRoute(engineMetaData.getJvmRoute());
+ engine.setDefaultHost(engineMetaData.getDefaultHost());
+ service.setContainer(engine);
+
+ // Server/Service/Engine/Realm
+ if (engineMetaData.getRealm() != null) {
+ engine.setRealm((org.apache.catalina.Realm) getInstance(engineMetaData.getRealm(), null));
+ }
+
+ // Server/Service/Engine/Valve
+ addValves(engine, engineMetaData.getValves());
+
+ // Server/Service/Engine/Host
+ if (engineMetaData.getHosts() != null)
+ {
+ Iterator<HostMetaData> hostMetaDatas = engineMetaData.getHosts().iterator();
+ while (hostMetaDatas.hasNext())
{
- Iterator<HostMetaData> hostMetaDatas = engineMetaData.getHosts().iterator();
- while (hostMetaDatas.hasNext())
- {
- HostMetaData hostMetaData = hostMetaDatas.next();
- org.apache.catalina.Host host =
- (org.apache.catalina.Host) getInstance(hostMetaData, "org.apache.catalina.core.StandardHost");
- addLifecycleListeners(host, hostMetaData.getListeners());
- host.setName(hostMetaData.getName());
- // FIXME: not really needed, and could hurt extensibility; probably needed until JBW GA with a fix
- host.setConfigClass("org.jboss.web.tomcat.service.deployers.JBossContextConfig");
- engine.addChild(host);
-
- // Server/Service/Engine/Host/Realm
- if (hostMetaData.getRealm() != null) {
- host.setRealm((org.apache.catalina.Realm) getInstance(hostMetaData.getRealm(), null));
+ HostMetaData hostMetaData = hostMetaDatas.next();
+ org.apache.catalina.Host host =
+ (org.apache.catalina.Host) getInstance(hostMetaData, "org.apache.catalina.core.StandardHost");
+ addLifecycleListeners(host, hostMetaData.getListeners());
+ host.setName(hostMetaData.getName());
+ // FIXME: not really needed, and could hurt extensibility; probably needed until JBW GA with a fix
+ host.setConfigClass("org.jboss.web.tomcat.service.deployers.JBossContextConfig");
+ engine.addChild(host);
+
+ // Server/Service/Engine/Host/Realm
+ if (hostMetaData.getRealm() != null) {
+ host.setRealm((org.apache.catalina.Realm) getInstance(hostMetaData.getRealm(), null));
+ }
+
+ // Server/Service/Engine/Host/Valve
+ addValves(host, hostMetaData.getValves());
+
+ // Server/Service/Engine/Host/Alias
+ if (hostMetaData.getAliases() != null) {
+ Iterator<String> aliases = hostMetaData.getAliases().iterator();
+ while (aliases.hasNext()) {
+ host.addAlias(aliases.next());
}
-
- // Server/Service/Engine/Host/Valve
- addValves(host, hostMetaData.getValves());
-
- // Server/Service/Engine/Host/Alias
- if (hostMetaData.getAliases() != null) {
- Iterator<String> aliases = hostMetaData.getAliases().iterator();
- while (aliases.hasNext()) {
- host.addAlias(aliases.next());
- }
- }
-
}
+
}
-
}
-
- // Set the resulting Server to the Catalina instance
- catalina.setServer(catalinaServer);
+
}
-
+
+ // Set the resulting Server to the Catalina instance
+ catalina.setServer(catalinaServer);
+
// Start Tomcat
server.invoke(objectName, "create", new Object[]{}, new String[]{});
server.invoke(objectName, "start", new Object[]{}, new String[]{});
More information about the jboss-cvs-commits
mailing list