[jboss-cvs] JBossAS SVN: r73524 - in trunk: bootstrap/src and 10 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue May 20 10:24:34 EDT 2008
Author: adrian at jboss.org
Date: 2008-05-20 10:24:34 -0400 (Tue, 20 May 2008)
New Revision: 73524
Added:
trunk/bootstrap/src/main/org/jboss/bootstrap/BootstrapMetaData.java
trunk/bootstrap/src/main/org/jboss/bootstrap/xml/
trunk/bootstrap/src/main/org/jboss/bootstrap/xml/BootstrapParser.java
trunk/bootstrap/src/main/org/jboss/bootstrap/xml/BootstrapSchemaBinding.java
trunk/bootstrap/src/resources/
trunk/bootstrap/src/resources/schema/
trunk/bootstrap/src/resources/schema/jboss-bootstrap_1_0.xsd
trunk/server/src/etc/conf/default/aop.xml
trunk/server/src/etc/conf/default/bootstrap-repo.xml
trunk/server/src/etc/conf/default/bootstrap.xml
trunk/server/src/etc/conf/default/classloader.xml
trunk/server/src/etc/conf/default/deployers.xml
trunk/server/src/etc/conf/default/jmx.xml
trunk/server/src/etc/conf/default/profile-service-repository.xml
trunk/server/src/etc/conf/default/profile-service.xml
Removed:
trunk/server/src/etc/conf/default/bootstrap-beans.xml
trunk/server/src/etc/conf/default/bootstrap-repo-beans.xml
Modified:
trunk/bootstrap/build.xml
trunk/bootstrap/src/main/org/jboss/bootstrap/microcontainer/ServerImpl.java
trunk/build/build.xml
trunk/system-jmx/src/main/org/jboss/system/server/jmx/JMXKernel.java
trunk/system/src/main/org/jboss/system/server/profileservice/ProfileServiceBootstrap.java
trunk/testsuite/imports/server-config.xml
Log:
[JBAS-5525] - Make a start on modularising the bootstrap
Modified: trunk/bootstrap/build.xml
===================================================================
--- trunk/bootstrap/build.xml 2008-05-20 14:24:11 UTC (rev 73523)
+++ trunk/bootstrap/build.xml 2008-05-20 14:24:34 UTC (rev 73524)
@@ -110,6 +110,7 @@
<target name="compile"
description="Compile all source files."
depends="_default:compile-classes,
+ _default:compile-resources,
_default:compile-etc"/>
<!-- ================================================================== -->
@@ -124,6 +125,7 @@
<!-- -->
<jar jarfile="${build.lib}/jboss-bootstrap.jar" manifest="${build.etc}/default.mf">
<fileset dir="${build.classes}"/>
+ <fileset dir="${build.resources}"/>
</jar>
</target>
Added: trunk/bootstrap/src/main/org/jboss/bootstrap/BootstrapMetaData.java
===================================================================
--- trunk/bootstrap/src/main/org/jboss/bootstrap/BootstrapMetaData.java (rev 0)
+++ trunk/bootstrap/src/main/org/jboss/bootstrap/BootstrapMetaData.java 2008-05-20 14:24:34 UTC (rev 73524)
@@ -0,0 +1,66 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2007, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.bootstrap;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * BootstrapMetaData.
+ *
+ * @author <a href="adrian at jboss.com">Adrian Brock</a>
+ * @version $Revision: 1.1 $
+ */
+public class BootstrapMetaData implements Serializable
+{
+ /** The serialVersionUID */
+ private static final long serialVersionUID = 7850412833463503239L;
+
+ /** The bootstrap urls */
+ private List<String> bootstrapURLs;
+
+ /**
+ * Get the bootstrapURLs.
+ *
+ * @return the bootstrapURLs.
+ */
+ public List<String> getBootstrapURLs()
+ {
+ return bootstrapURLs;
+ }
+
+ /**
+ * Set the bootstrapURLs.
+ *
+ * @param bootstrapURLs the bootstrapURLs.
+ */
+ public void setBootstrapURLs(List<String> bootstrapURLs)
+ {
+ this.bootstrapURLs = bootstrapURLs;
+ }
+
+ @Override
+ public String toString()
+ {
+ return super.toString() + "{" + bootstrapURLs + "}";
+ }
+}
Modified: trunk/bootstrap/src/main/org/jboss/bootstrap/microcontainer/ServerImpl.java
===================================================================
--- trunk/bootstrap/src/main/org/jboss/bootstrap/microcontainer/ServerImpl.java 2008-05-20 14:24:11 UTC (rev 73523)
+++ trunk/bootstrap/src/main/org/jboss/bootstrap/microcontainer/ServerImpl.java 2008-05-20 14:24:34 UTC (rev 73524)
@@ -23,12 +23,15 @@
import java.net.URL;
import java.util.Collections;
+import java.util.List;
import org.jboss.beans.metadata.plugins.AbstractBeanMetaData;
import org.jboss.beans.metadata.plugins.InstallCallbackMetaData;
import org.jboss.beans.metadata.plugins.UninstallCallbackMetaData;
import org.jboss.beans.metadata.spi.CallbackMetaData;
import org.jboss.bootstrap.AbstractServerImpl;
+import org.jboss.bootstrap.BootstrapMetaData;
+import org.jboss.bootstrap.xml.BootstrapParser;
import org.jboss.kernel.Kernel;
import org.jboss.kernel.plugins.bootstrap.basic.BasicBootstrap;
import org.jboss.kernel.plugins.deployment.xml.BasicXMLDeployer;
@@ -47,7 +50,7 @@
public class ServerImpl extends AbstractServerImpl
{
/** The bootstrap file */
- public static String BOOTSTRAP_XML_NAME = "bootstrap-beans.xml";
+ public static String BOOTSTRAP_XML_NAME = "bootstrap.xml";
/** The bootstrap */
private BasicBootstrap bootstrap;
@@ -88,29 +91,53 @@
controller.install(metaData, this);
// Determine the url for the bootstrap
+ URL configURL = getConfig().getServerConfigURL();
URL url = getConfig().getBootstrapURL();
if (url == null)
{
- URL configURL = getConfig().getServerConfigURL();
url = new URL(configURL, BOOTSTRAP_XML_NAME);
log.info("Starting Microcontainer, bootstrapURL=" + url);
}
+
+ // Parse the bootstrap metadata
+ BootstrapMetaData bootstrapMetaData = BootstrapParser.parse(url);
+ List<String> bootstrapURLs = bootstrapMetaData.getBootstrapURLs();
+ if (bootstrapURLs == null || bootstrapURLs.isEmpty())
+ throw new IllegalStateException("No bootstrap urls in " + url);
+ log.debug("BootstrapURLs=" + bootstrapURLs);
// Create an xml deployer
kernelDeployer = new BasicXMLDeployer(kernel);
+ try
+ {
+ // Deploy the bootstrap urls
+ for (String bootstrapURL : bootstrapURLs)
+ {
+ url = new URL(configURL, bootstrapURL);
+ kernelDeployer.deploy(url);
+ }
+
+ // Check it is complete
+ kernelDeployer.validate();
+
+ // Send a notification that the startup is complete
+ KernelEventManager eventMgr = kernel.getEventManager();
+ KernelEvent startEvent = new AbstractEvent(eventMgr, START_NOTIFICATION_TYPE, 0, System.currentTimeMillis(), new Long(watch.getLapTime()));
+ eventMgr.fireKernelEvent(startEvent);
- // Deploy the bootstrap url
- kernelDeployer.deploy(url);
-
- // Check it is complete
- kernelDeployer.validate();
-
- // Send a notification that the startup is complete
- KernelEventManager eventMgr = kernel.getEventManager();
- KernelEvent startEvent = new AbstractEvent(eventMgr, START_NOTIFICATION_TYPE, 0, System.currentTimeMillis(), new Long(watch.getLapTime()));
- eventMgr.fireKernelEvent(startEvent);
-
- this.bootstrap = bootstrap;
+ this.bootstrap = bootstrap;
+ }
+ catch (Throwable t)
+ {
+ try
+ {
+ kernelDeployer.shutdown();
+ }
+ catch (Throwable ignored)
+ {
+ }
+ throw t;
+ }
}
@Override
Added: trunk/bootstrap/src/main/org/jboss/bootstrap/xml/BootstrapParser.java
===================================================================
--- trunk/bootstrap/src/main/org/jboss/bootstrap/xml/BootstrapParser.java (rev 0)
+++ trunk/bootstrap/src/main/org/jboss/bootstrap/xml/BootstrapParser.java 2008-05-20 14:24:34 UTC (rev 73524)
@@ -0,0 +1,63 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2008, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.bootstrap.xml;
+
+import java.net.URL;
+
+import org.jboss.bootstrap.BootstrapMetaData;
+import org.jboss.xb.binding.Unmarshaller;
+import org.jboss.xb.binding.UnmarshallerFactory;
+
+/**
+ * BootstrapParser.
+ *
+ * @author <a href="adrian at jboss.com">Adrian Brock</a>
+ * @version $Revision: 1.1 $
+ */
+public class BootstrapParser
+{
+ /**
+ * Parse bootstrap metadata from the given url
+ *
+ * @param url the url
+ * @return the bootstrap metadata
+ */
+ public static BootstrapMetaData parse(URL url)
+ {
+ if (url == null)
+ throw new IllegalArgumentException("Null url");
+
+ UnmarshallerFactory factory = UnmarshallerFactory.newInstance();
+ Unmarshaller unmarshaller = factory.newUnmarshaller();
+ try
+ {
+ BootstrapMetaData result = (BootstrapMetaData) unmarshaller.unmarshal(url.toString(), new BootstrapSchemaBinding());
+ if (result == null)
+ throw new IllegalStateException("The bootsrap xml " + url + " is not well formed");
+ return result;
+ }
+ catch (Exception e)
+ {
+ throw new RuntimeException("Error unmarshalling " + url, e);
+ }
+ }
+}
Added: trunk/bootstrap/src/main/org/jboss/bootstrap/xml/BootstrapSchemaBinding.java
===================================================================
--- trunk/bootstrap/src/main/org/jboss/bootstrap/xml/BootstrapSchemaBinding.java (rev 0)
+++ trunk/bootstrap/src/main/org/jboss/bootstrap/xml/BootstrapSchemaBinding.java 2008-05-20 14:24:34 UTC (rev 73524)
@@ -0,0 +1,97 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bootstrap.xml;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import javax.xml.namespace.QName;
+
+import org.jboss.bootstrap.BootstrapMetaData;
+import org.jboss.xb.binding.SimpleTypeBindings;
+import org.jboss.xb.binding.metadata.ClassMetaData;
+import org.jboss.xb.binding.sunday.unmarshalling.AllBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.DefaultElementInterceptor;
+import org.jboss.xb.binding.sunday.unmarshalling.ElementBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.ParticleBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.SchemaBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.TypeBinding;
+
+/**
+ * SchemaBinding for the bootstrap
+ *
+ * @author <a href="mailto:adrian at jboss.com">Adrian Brock</a>
+ * @version $Revision: 71554 $
+ */
+public class BootstrapSchemaBinding extends SchemaBinding
+{
+ /** The bootstrap namespace */
+ public static final String NAMESPACE = "urn:jboss:bootstrap:1.0";
+
+ /**
+ * Create a new BootstrapSchemaBinding.
+ */
+ public BootstrapSchemaBinding()
+ {
+ TypeBinding stringType = getType(SimpleTypeBindings.typeQName(String.class));
+
+ setNamespaces(Collections.singleton(NAMESPACE));
+ setIgnoreLowLine(true);
+ setIgnoreUnresolvedFieldOrClass(false);
+ setReplacePropertyRefs(true);
+ setStrictSchema(true);
+
+ // The bootstrap type
+ TypeBinding bootstrapType = new TypeBinding(new QName(NAMESPACE, "bootstrapType"));
+ bootstrapType.setSimple(false);
+ AllBinding bootstrapModel = new AllBinding(this);
+ ParticleBinding bootstrapParticle = new ParticleBinding(bootstrapModel, 1, 1, false);
+ bootstrapType.setParticle(bootstrapParticle);
+ ClassMetaData bootstrapClassMetaData = new ClassMetaData();
+ bootstrapClassMetaData.setImpl(BootstrapMetaData.class.getName());
+ bootstrapType.setClassMetaData(bootstrapClassMetaData);
+
+ // Bootstrap can take some urls
+ ElementBinding urlElement = new ElementBinding(this, new QName(NAMESPACE, "url"), stringType);
+ ParticleBinding urlParticle = new ParticleBinding(urlElement, 0, 1, true);
+ bootstrapModel.addParticle(urlParticle);
+ bootstrapType.pushInterceptor(urlElement.getQName(), new DefaultElementInterceptor()
+ {
+ public void add(Object parent, Object child, QName name)
+ {
+ BootstrapMetaData bootstrap = (BootstrapMetaData) parent;
+ String url = (String) child;
+ List<String> bootstrapURLs = bootstrap.getBootstrapURLs();
+ if (bootstrapURLs == null)
+ {
+ bootstrapURLs = new ArrayList<String>();
+ bootstrap.setBootstrapURLs(bootstrapURLs);
+ }
+ bootstrapURLs.add(url);
+ }
+ });
+
+ // The bootstrap root element
+ addElement(new ElementBinding(this, new QName(NAMESPACE, "bootstrap"), bootstrapType));
+ }
+}
Added: trunk/bootstrap/src/resources/schema/jboss-bootstrap_1_0.xsd
===================================================================
--- trunk/bootstrap/src/resources/schema/jboss-bootstrap_1_0.xsd (rev 0)
+++ trunk/bootstrap/src/resources/schema/jboss-bootstrap_1_0.xsd 2008-05-20 14:24:34 UTC (rev 73524)
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="urn:jboss:bootstrap:1.0"
+ xmlns="urn:jboss:bootstrap:1.0"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="1.0">
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+ JBoss, Home of Professional Open Source
+ Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ by the @authors tag. See the copyright.txt in the distribution for a
+ full listing of individual contributors.
+
+ This is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of
+ the License, or (at your option) any later version.
+
+ This software is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this software; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:element name="bootstrap" type="bootstrapType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+ The bootstrap contains a list of file urls.
+ <bootstrap xmlns="urn:jboss:bootstrap:1.0">
+ <url>classloader.xml</url>
+ <url>aop.xml</url>
+ <url>jmx.xml</url>
+ <url>deployers.xml</url>
+ <url>profile-service.xml</url>
+ </bootstrap>
+
+ The files referenced must be microcontainer deployments.
+ They are deployed in the order given.
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ </xsd:element>
+
+ <xsd:complexType name="bootstrapType">
+ <xsd:sequence minOccurs="1" maxOccurs="unbounded">
+ <xsd:element name="url" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[
+ The url is the name of the file.
+ If it is not a fully qualified url, the
+ file is referenced relative to the system property
+ server.config.url which is
+ $JBOSS_HOME/server/default/conf
+ by default.
+
+ e.g. a file relative to the config url
+ <url>classloader.xml</url>
+
+ e.g. an abolsulte url
+ <url>file:///home/blah/classloader.xml</url>
+
+ e.g. a file relative to a system property containing a url
+ <url>${some.system.property.url}/classloader.xml</url>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:complexType>
+
+</xsd:schema>
+
Modified: trunk/build/build.xml
===================================================================
--- trunk/build/build.xml 2008-05-20 14:24:11 UTC (rev 73523)
+++ trunk/build/build.xml 2008-05-20 14:24:34 UTC (rev 73524)
@@ -755,7 +755,12 @@
<fileset dir="${install.default.conf}">
<include name="jndi.properties" />
<include name="jboss-log4j.xml" />
- <include name="bootstrap-beans.xml" />
+ <include name="bootstrap.xml" />
+ <include name="aop.xml" />
+ <include name="classloader.xml" />
+ <include name="deployers.xml" />
+ <include name="jmx.xml" />
+ <include name="profile-service.xml" />
<include name="xmdesc/NamingBean-xmbean.xml" />
<include name="xmdesc/NamingService-xmbean.xml" />
</fileset>
Added: trunk/server/src/etc/conf/default/aop.xml
===================================================================
--- trunk/server/src/etc/conf/default/aop.xml (rev 0)
+++ trunk/server/src/etc/conf/default/aop.xml 2008-05-20 14:24:34 UTC (rev 73524)
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ AOP configuration
+-->
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+ <classloader><inject bean="aop-classloader:0.0.0"/></classloader>
+
+ <classloader name="aop-classloader" xmlns="urn:jboss:classloader:1.0" export-all="NON_EMPTY" import-all="true">
+ <root>${jboss.lib.url}/jboss-aop-deployer-jdk50.jar</root>
+ <root>${jboss.lib.url}/jboss-aop-jboss4-jdk50.jar</root>
+ <root>${jboss.lib.url}/jboss-aop-jboss5.jar</root>
+ </classloader>
+
+ <!-- Integration -->
+ <bean name="AOPClassLoaderScopingPolicy" class="org.jboss.aop.asintegration.jboss5.VFSClassLoaderScopingPolicy"/>
+ <bean name="AOPJBossIntegration" class="org.jboss.aop.asintegration.jboss5.JBoss5Integration">
+ <property name="scopingPolicy"><inject bean="AOPClassLoaderScopingPolicy"/></property>
+ </bean>
+
+ <!--
+ Valid values for the AspectManager bean for use with enableTransformer=true are:
+ * org.jboss.aop.deployers.AspectManagerJDK5 - works with the -javaagent:pluggable-instrumentor.jar switch
+ * org.jboss.aop.deployers.AspectManagerJRockit - works with JRockit and the -Xmanagement:class=org.jboss.aop.hook.JRockitPluggableClassPreProcessor switch
+ -->
+ <bean name="AspectManager" class="org.jboss.aop.deployers.AspectManagerJDK5">
+ <constructor>
+ <parameter><![CDATA[
+ <aop>
+ <aspect name="mainDeployer" class="org.jboss.profileservice.aop.MainDeployerAspect"/>
+ <bind pointcut="execution(* $instanceof{org.jboss.deployers.spi.deployment.MainDeployer}->process(..))">
+ <advice name="process" aspect="mainDeployer"/>
+ </bind>
+ <aspect name="persist" class="org.jboss.profileservice.aop.PersistAspect"/>
+ <bind pointcut="execution(* $instanceof{org.jboss.managed.api.ManagedProperty}->setValue(..))">
+ <advice name="setValue" aspect="persist"/>
+ </bind>
+ </aop>]]>
+ </parameter>
+ </constructor>
+
+ <property name="jbossIntegration"><inject bean="AOPJBossIntegration"/></property>
+
+ <property name="enableLoadtimeWeaving">false</property>
+ <!-- only relevant when EnableLoadtimeWeaving is true.
+ When transformer is on, every loaded class gets
+ transformed. If AOP can't find the class, then it
+ throws an exception. Sometimes, classes may not have
+ all the classes they reference. So, the Suppressing
+ is needed. (i.e. Jboss cache in the default configuration -->
+ <property name="suppressTransformationErrors">true</property>
+ <property name="prune">true</property>
+ <property name="include">org.jboss.test., org.jboss.injbossaop.</property>
+ <property name="exclude">org.jboss.</property>
+ <!-- This avoids instrumentation of hibernate cglib enhanced proxies
+ <property name="ignore">*$$EnhancerByCGLIB$$*</property> -->
+ <property name="optimized">true</property>
+ <property name="verbose">false</property>
+ <!--
+ Available choices for this attribute are:
+ org.jboss.aop.instrument.ClassicInstrumentor (default)
+ org.jboss.aop.instrument.GeneratedAdvisorInstrumentor
+ <property name="instrumentor">org.jboss.aop.instrument.ClassicInstrumentor</property>
+ -->
+ </bean>
+
+ <!-- Support for @JMX -->
+ <lifecycle-configure xmlns="urn:jboss:aop-beans:1.0"
+ name="JMXRegistrationAdvice"
+ class="org.jboss.system.microcontainer.jmx.ServiceControllerRegistrationLifecycleCallback"
+ classes="@org.jboss.aop.microcontainer.aspects.jmx.JMX"
+ manager-bean="AspectManager"
+ manager-property="aspectManager">
+ <property name="serviceController"><inject bean="JMXKernel" property="serviceController"/></property>
+ </lifecycle-configure>
+ <lifecycle-create xmlns="urn:jboss:aop-beans:1.0"
+ name="JMXCreateDestroyAdvice"
+ class="org.jboss.system.microcontainer.jmx.ServiceControllerCreateDestroyLifecycleCallback"
+ classes="@org.jboss.aop.microcontainer.aspects.jmx.JMX"
+ manager-bean="AspectManager"
+ manager-property="aspectManager">
+ <property name="serviceController"><inject bean="JMXKernel" property="serviceController"/></property>
+ </lifecycle-create>
+ <lifecycle-install xmlns="urn:jboss:aop-beans:1.0"
+ name="JMXStartStopAdvice"
+ class="org.jboss.system.microcontainer.jmx.ServiceControllerStartStopLifecycleCallback"
+ classes="@org.jboss.aop.microcontainer.aspects.jmx.JMX"
+ manager-bean="AspectManager"
+ manager-property="aspectManager">
+ <property name="serviceController"><inject bean="JMXKernel" property="serviceController"/></property>
+ </lifecycle-install>
+
+ <!-- MBean for making sure that the underlying AspectManagerService gets registered in JMX -->
+ <bean name="AspectManagerJMXRegistrar" class="org.jboss.aop.deployers.AspectManagerJMXRegistrar">
+ <property name="mbeanServer"><inject bean="JMXKernel" property="mbeanServer"/></property>
+ <property name="aspectManager"><inject bean="AspectManager"/></property>
+ </bean>
+
+</deployment>
Deleted: trunk/server/src/etc/conf/default/bootstrap-beans.xml
===================================================================
--- trunk/server/src/etc/conf/default/bootstrap-beans.xml 2008-05-20 14:24:11 UTC (rev 73523)
+++ trunk/server/src/etc/conf/default/bootstrap-beans.xml 2008-05-20 14:24:34 UTC (rev 73524)
@@ -1,383 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
- The bootstrap of the server. This should only have the minimum
- needed to bootstrap the mc kernel and profile service.
- $Id:$
--->
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
-
- <!-- All beans use the bootstrap classloader -->
- <classloader><inject bean="BootstrapClassLoader"/></classloader>
-
- <!-- TODO Should split this file up and use the new classloader -->
- <bean name="BootstrapClassLoader" class="org.jboss.system.NoAnnotationURLClassLoader">
- <classloader><null/></classloader>
- <constructor factoryClass="org.jboss.system.NoAnnotationURLClassLoader" factoryMethod="createClassLoader">
- <parameter>
- <array elementClass="java.net.URL">
- <!-- Deployers -->
- <value>${jboss.lib.url}/jboss-deployers-core-spi.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-core.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-client-spi.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-client.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-structure-spi.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-spi.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-impl.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-vfs-spi.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-vfs.jar</value>
- <!-- System -->
- <value>${jboss.lib.url}/jboss-system.jar</value>
- <!-- JMX -->
- <value>${jboss.lib.url}/jboss-j2se.jar</value>
- <value>${jboss.lib.url}/jboss-mbeans.jar</value>
- <value>${jboss.lib.url}/jboss-jmx.jar</value>
- <value>${jboss.lib.url}/jboss-system-jmx.jar</value>
- <value>${jboss.lib.url}/dom4j.jar</value>
- <!-- AOP -->
- <value>${jboss.lib.url}/jboss-aop-deployer-jdk50.jar</value>
- <value>${jboss.lib.url}/jboss-aop-jboss4-jdk50.jar</value>
- <value>${jboss.lib.url}/jboss-aop-jboss5.jar</value>
- <!-- JAXB - shouldn't this be in endorsed? -->
- <value>${jboss.lib.url}/activation.jar</value>
- <value>${jboss.lib.url}/jaxb-impl.jar</value>
- <value>${jboss.lib.url}/stax-api.jar</value>
- <value>${jboss.lib.url}/wstx.jar</value>
- </array>
- </parameter>
- </constructor>
- </bean>
-
- <!-- The basic profile service which relies on vfs scanners
- to determine the profile deployments. This version does not
- support the full ProfileService spi.
- -->
- <bean name="ProfileService" class="org.jboss.system.server.profileservice.basic.ProfileServiceImpl">
- <constructor>
- <parameter>${jboss.server.name}</parameter>
- </constructor>
- <property name="profileRoot">${jboss.server.home.dir}</property>
- </bean>
-
- <bean name="ProfileServiceBootstrap" class="org.jboss.system.server.profileservice.ProfileServiceBootstrap">
- <property name="kernel"><inject bean="jboss.kernel:service=Kernel"/></property>
- </bean>
-
- <!-- The legacy JMX kernel -->
- <bean name="JMXKernel" class="org.jboss.system.server.jmx.JMXKernel">
- <property name="kernel"><inject bean="jboss.kernel:service=Kernel"/></property>
- <property name="serverImpl"><inject bean="JBossServer"/></property>
- <property name="oldClassLoader">false</property>
- </bean>
-
-
- <!-- Repository classloader -->
- <!--bean name="AOPClassLoaderScopingPolicy" class="org.jboss.aop.asintegration.jboss4.RepositoryClassLoaderScopingPolicy"/-->
- <!-- VFS ClassLoader -->
- <bean name="AOPClassLoaderScopingPolicy" class="org.jboss.aop.asintegration.jboss5.VFSClassLoaderScopingPolicy"/>
-
- <!-- Integration -->
- <bean name="AOPJBossIntegration" class="org.jboss.aop.asintegration.jboss5.JBoss5Integration">
- <property name="scopingPolicy"><inject bean="AOPClassLoaderScopingPolicy"/></property>
- </bean>
- <!--
- Valid values for the AspectManager bean for use with enableTransformer=true are:
- * org.jboss.aop.deployers.AspectManagerJDK5 - works with the -javaagent:pluggable-instrumentor.jar switch
- * org.jboss.aop.deployers.AspectManagerJRockit - works with JRockit and the -Xmanagement:class=org.jboss.aop.hook.JRockitPluggableClassPreProcessor switch
- -->
- <bean name="AspectManager" class="org.jboss.aop.deployers.AspectManagerJDK5">
- <constructor>
- <parameter><![CDATA[
- <aop>
- <aspect name="mainDeployer" class="org.jboss.profileservice.aop.MainDeployerAspect"/>
- <bind pointcut="execution(* $instanceof{org.jboss.deployers.spi.deployment.MainDeployer}->process(..))">
- <advice name="process" aspect="mainDeployer"/>
- </bind>
- <aspect name="persist" class="org.jboss.profileservice.aop.PersistAspect"/>
- <bind pointcut="execution(* $instanceof{org.jboss.managed.api.ManagedProperty}->setValue(..))">
- <advice name="setValue" aspect="persist"/>
- </bind>
- </aop>]]>
- </parameter>
- </constructor>
-
- <property name="jbossIntegration"><inject bean="AOPJBossIntegration"/></property>
-
- <property name="enableLoadtimeWeaving">false</property>
- <!-- only relevant when EnableLoadtimeWeaving is true.
- When transformer is on, every loaded class gets
- transformed. If AOP can't find the class, then it
- throws an exception. Sometimes, classes may not have
- all the classes they reference. So, the Suppressing
- is needed. (i.e. Jboss cache in the default configuration -->
- <property name="suppressTransformationErrors">true</property>
- <property name="prune">true</property>
- <property name="include">org.jboss.test., org.jboss.injbossaop.</property>
- <property name="exclude">org.jboss.</property>
- <!-- This avoids instrumentation of hibernate cglib enhanced proxies
- <property name="ignore">*$$EnhancerByCGLIB$$*</property> -->
- <property name="optimized">true</property>
- <property name="verbose">false</property>
- <!--
- Available choices for this attribute are:
- org.jboss.aop.instrument.ClassicInstrumentor (default)
- org.jboss.aop.instrument.GeneratedAdvisorInstrumentor
- <property name="instrumentor">org.jboss.aop.instrument.ClassicInstrumentor</property>
- -->
- </bean>
-
- <!-- Add the JMX -->
- <lifecycle-configure xmlns="urn:jboss:aop-beans:1.0"
- name="JMXRegistrationAdvice"
- class="org.jboss.system.microcontainer.jmx.ServiceControllerRegistrationLifecycleCallback"
- classes="@org.jboss.aop.microcontainer.aspects.jmx.JMX"
- manager-bean="AspectManager"
- manager-property="aspectManager">
- <property name="serviceController"><inject bean="JMXKernel" property="serviceController"/></property>
- </lifecycle-configure>
- <lifecycle-create xmlns="urn:jboss:aop-beans:1.0"
- name="JMXCreateDestroyAdvice"
- class="org.jboss.system.microcontainer.jmx.ServiceControllerCreateDestroyLifecycleCallback"
- classes="@org.jboss.aop.microcontainer.aspects.jmx.JMX"
- manager-bean="AspectManager"
- manager-property="aspectManager">
- <property name="serviceController"><inject bean="JMXKernel" property="serviceController"/></property>
- </lifecycle-create>
- <lifecycle-install xmlns="urn:jboss:aop-beans:1.0"
- name="JMXStartStopAdvice"
- class="org.jboss.system.microcontainer.jmx.ServiceControllerStartStopLifecycleCallback"
- classes="@org.jboss.aop.microcontainer.aspects.jmx.JMX"
- manager-bean="AspectManager"
- manager-property="aspectManager">
- <property name="serviceController"><inject bean="JMXKernel" property="serviceController"/></property>
- </lifecycle-install>
-
- <!-- The MainDeployer -->
- <bean name="MainDeployer" class="org.jboss.deployers.plugins.main.MainDeployerImpl">
- <property name="structuralDeployers"><inject bean="StructuralDeployers"/></property>
- <property name="deployers"><inject bean="Deployers"/></property>
- <property name="mgtDeploymentCreator"><inject bean="ManagedDeploymentCreator"/></property>
- </bean>
-
- <!-- The ManagedDeploymentCreator implementation -->
- <bean name="ManagedDeploymentCreator" class="org.jboss.deployers.plugins.managed.DefaultManagedDeploymentCreator" />
-
- <!-- The holder for deployers that determine structure -->
- <bean name="StructuralDeployers" class="org.jboss.deployers.vfs.plugins.structure.VFSStructuralDeployersImpl">
- <property name="structureBuilder">
- <!-- The consolidator of the structure information -->
- <bean name="StructureBuilder" class="org.jboss.deployers.vfs.plugins.structure.VFSStructureBuilder"/>
- </property>
- <!-- Accept any implementor of structure deployer -->
- <incallback method="addDeployer"/>
- <uncallback method="removeDeployer"/>
- </bean>
-
- <!-- The holder for deployers that do real deployment -->
- <bean name="Deployers" class="org.jboss.deployers.plugins.deployers.DeployersImpl">
- <constructor><parameter><inject bean="jboss.kernel:service=KernelController"/></parameter></constructor>
- <!-- Accept any implementor of deployer -->
- <incallback method="addDeployer"/>
- <uncallback method="removeDeployer"/>
- </bean>
-
- <!-- A declared structure descriptor deployer -->
- <bean name="DeclaredStructure" class="org.jboss.deployers.vfs.plugins.structure.explicit.DeclaredStructure"></bean>
-
- <!-- WAR Structure -->
- <bean name="WARStructure" class="org.jboss.deployers.vfs.plugins.structure.war.WARStructure">
- <property name="webInfLibFilter">
- <!-- We accept all .jar files in WEB-INF/lib -->
- <bean name="WebInfLibFilter" class="org.jboss.virtual.plugins.vfs.helpers.SuffixMatchFilter">
- <constructor><parameter class="java.lang.String">.jar</parameter></constructor>
- </bean>
- </property>
- </bean>
-
- <!-- JAR Structure -->
- <bean name="JARStructure" class="org.jboss.deployers.vfs.plugins.structure.jar.JARStructure">
- <!-- Unless specified the default list of suffixes is .zip, .ear, .jar, ,.rar, .war, .sar, .har, .aop -->
- <constructor>
- <parameter>
- <set elementClass="java.lang.String">
- <value>.zip</value>
- <value>.ear</value>
- <value>.jar</value>
- <value>.rar</value>
- <value>.war</value>
- <value>.sar</value>
- <value>.har</value>
- <value>.aop</value>
- <value>.deployer</value>
- <value>.beans</value>
- </set>
- </parameter>
- </constructor>
- <property name="candidateStructureVisitorFactory">
- <!-- Any file that is not an ordinary directory is a candidate -->
- <bean name="JARStructureCandidates" class="org.jboss.deployers.vfs.spi.structure.helpers.DefaultCandidateStructureVisitorFactory">
- <!-- A filter to exclude some obvious non-subdeployments -->
- <property name="filter">
- <bean name="JARFilter" class="org.jboss.virtual.plugins.vfs.helpers.SuffixesExcludeFilter">
- <constructor><parameter>
- <list elementClass="java.lang.String">
- <!-- Exclude class files as subdeployments -->
- <value>.class</value>
- </list>
- </parameter></constructor>
- </bean>
- </property>
- </bean>
- </property>
- </bean>
-
- <!-- File Structure -->
- <bean name="FileStructure" class="org.jboss.deployers.vfs.plugins.structure.file.FileStructure">
- <!-- Unless specified the default list of suffixes is -service.xml, -beans.xml, -ds.xml, -aop.xml -->
- <constructor>
- <parameter>
- <set elementClass="java.lang.String">
- <value>-service.xml</value>
- <value>-beans.xml</value>
- <value>-ds.xml</value>
- <value>-aop.xml</value>
- </set>
- </parameter>
- </constructor>
- </bean>
-
- <!-- AOP deployment -->
- <!-- FIXME Replace with org.jboss.aop.deployers.AspectAppParsingDeployer once AOP is released -->
- <bean name="AspectAppParsingDeployer" class="org.jboss.aop.asintegration.jboss5.AspectAppParsingDeployer"/>
- <bean name="AspectDeployer" class="org.jboss.aop.deployers.AspectDeployer">
- <property name="type">aop</property>
- <property name="aspectManager"><inject bean="AspectManager" property="aspectManager"/></property>
- </bean>
-
- <!-- POJO Deployment -->
- <bean name="BeanDeployer" class="org.jboss.deployers.vfs.deployer.kernel.BeanDeployer">
- <property name="type">beans</property>
- </bean>
- <bean name="KernelDeploymentDeployer" class="org.jboss.deployers.vfs.deployer.kernel.KernelDeploymentDeployer">
- <property name="type">beans</property>
- </bean>
- <bean name="BeanMetaDataDeployer" class="org.jboss.deployers.vfs.deployer.kernel.BeanMetaDataDeployer">
- <constructor><parameter><inject bean="jboss.kernel:service=Kernel"/></parameter></constructor>
- <property name="type">beans</property>
- </bean>
-
- <!-- JMX Deployment -->
- <bean name="SARDeployer" class="org.jboss.system.deployers.SARDeployer">
- <property name="type">sar</property>
- </bean>
- <bean name="ServiceDeploymentDeployer" class="org.jboss.system.deployers.ServiceDeploymentDeployer">
- <property name="type">sar</property>
- </bean>
- <bean name="ServiceDeployer" class="org.jboss.system.deployers.ServiceDeployer">
- <constructor><parameter><inject bean="JMXKernel" property="serviceController"/></parameter></constructor>
- <property name="type">sar</property>
- </bean>
-
- <!-- UnifiedClassLoader -->
- <!--bean name="ServiceClassLoaderDeployer" class="org.jboss.system.deployers.ServiceClassLoaderDeployer">
- <constructor><parameter><inject bean="JMXKernel" property="serviceController"/></parameter></constructor>
- </bean-->
-
- <!-- VFS ClassLoader -->
- <bean name="ClassLoaderSystem" class="org.jboss.classloader.spi.ClassLoaderSystem">
- <constructor factoryClass="org.jboss.classloader.spi.ClassLoaderSystem" factoryMethod="getInstance"/>
- </bean>
- <bean name="ClassLoading" class="org.jboss.classloading.spi.dependency.ClassLoading">
- <incallback method="addModule" state="Configured"/>
- <uncallback method="removeModule" state="Configured"/>
- </bean>
- <!-- FIXME Remove this -->
- <bean name="HackClassLoaderMetaDataDeployer" class="org.jboss.system.deployers.HackClassloaderMetaDataDeployer"/>
- <bean name="ClassLoadingMetaDataParser" class="org.jboss.deployers.vfs.spi.deployer.SchemaResolverDeployer">
- <constructor>
- <parameter>org.jboss.classloading.spi.metadata.ClassLoadingMetaData</parameter>
- </constructor>
- <property name="name">jboss-classloading.xml</property>
- <property name="buildManagedObject">true</property>
- </bean>
- <bean name="ClassLoadingDefaultDeployer" class="org.jboss.deployers.plugins.classloading.ClassLoadingDefaultDeployer">
- <property name="defaultMetaData">
- <classloading xmlns="urn:jboss:classloading:1.0" export-all="NON_EMPTY" import-all="true"/>
- </property>
- </bean>
- <bean name="InMemoryClassesDeployer" class="org.jboss.deployers.vfs.plugins.classloader.InMemoryClassesDeployer"/>
- <bean name="ClassLoaderDescribeDeployer" class="org.jboss.deployers.vfs.plugins.classloader.VFSClassLoaderDescribeDeployer">
- <property name="classLoading"><inject bean="ClassLoading"/></property>
- </bean>
- <bean name="ClassLoaderDeployer" class="org.jboss.deployers.plugins.classloading.AbstractLevelClassLoaderSystemDeployer">
- <property name="classLoading"><inject bean="ClassLoading"/></property>
- <property name="system"><inject bean="ClassLoaderSystem"/></property>
- </bean>
-
- <!-- MBean for making sure that the underlying AspectManagerService gets registered in JMX -->
- <bean name="AspectManagerJMXRegistrar" class="org.jboss.aop.deployers.AspectManagerJMXRegistrar">
- <property name="mbeanServer"><inject bean="JMXKernel" property="mbeanServer"/></property>
- <property name="aspectManager"><inject bean="AspectManager"/></property>
- </bean>
-
- <!-- A filter for excluding files from the scanner -->
- <bean name="DeploymentFilter" class="org.jboss.virtual.plugins.vfs.helpers.ExtensibleFilter">
- <!-- Files starting with theses strings are ignored -->
- <property name="prefixes">#,%,\,,.,_$</property>
- <!-- Files ending with theses strings are ignored -->
- <property name="suffixes">#,$,%,~,\,v,.BAK,.bak,.old,.orig,.tmp,.rej,.sh</property>
- <!-- Files matching with theses strings are ignored -->
- <property name="matches">.make.state,.nse_depinfo,CVS,CVS.admin,RCS,RCSLOG,SCCS,TAGS,core,tags</property>
- </bean>
-
- <!-- Scan for bootstraps -->
- <bean name="VFSBootstrapScanner" class="org.jboss.system.server.profileservice.VFSBootstrapScannerImpl">
- <property name="profileService"><inject bean="ProfileService"/></property>
- <property name="filterInstance"><inject bean="DeploymentFilter"/></property>
- <property name="URIList">
- <list elementClass="java.net.URI">
- <!-- Legacy static conf/jboss-service.xml -->
- <value>${jboss.server.home.url}conf/jboss-service.xml</value>
- </list>
- </property>
- </bean>
-
- <!-- Scan for deployers -->
- <bean name="VFSDeployerScanner" class="org.jboss.system.server.profileservice.VFSDeployerScannerImpl">
- <property name="profileService"><inject bean="ProfileService"/></property>
- <property name="filterInstance"><inject bean="DeploymentFilter"/></property>
- <property name="URIList">
- <list elementClass="java.net.URI">
- <!-- Directory for deployers -->
- <value>${jboss.server.home.url}deployers/</value>
- </list>
- </property>
- </bean>
-
- <!-- Scan for applications -->
- <bean name="VFSDeploymentScanner" class="org.jboss.system.server.profileservice.VFSDeploymentScannerImpl">
- <property name="profileService"><inject bean="ProfileService"/></property>
- <property name="filterInstance"><inject bean="DeploymentFilter"/></property>
- <property name="URIList">
- <list elementClass="java.net.URI">
- <!-- Standard hot deployment directory -->
- <value>${jboss.server.home.url}deploy/</value>
- </list>
- </property>
- </bean>
-
- <!-- Hotdeployment of applications -->
- <bean name="HDScanner"
- class="org.jboss.system.server.profileservice.hotdeploy.HDScanner">
- <property name="mainDeployer"><inject bean="MainDeployer"/></property>
- <!-- Workaround for JBMICROCONT-176
- -->
- <property name="controller"><inject bean="jboss.kernel:service=KernelController"/></property>
- <!-- Broken due to JBMICROCONT-176
- <property name="controller"><inject bean="jboss.kernel:service=Kernel" property="controller"/></property>
- -->
- <property name="profileService"><inject bean="ProfileService"/></property>
- <property name="scanPeriod">5000</property>
- <property name="scanThreadName">HDScanner</property>
- </bean>
-</deployment>
Deleted: trunk/server/src/etc/conf/default/bootstrap-repo-beans.xml
===================================================================
--- trunk/server/src/etc/conf/default/bootstrap-repo-beans.xml 2008-05-20 14:24:11 UTC (rev 73523)
+++ trunk/server/src/etc/conf/default/bootstrap-repo-beans.xml 2008-05-20 14:24:34 UTC (rev 73524)
@@ -1,342 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
- The bootstrap of the server. This should only have the minimum
- needed to bootstrap the mc kernel and profile service.
- $Id$
--->
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
-
- <!-- All beans use the bootstrap classloader -->
- <classloader><inject bean="BootstrapClassLoader"/></classloader>
-
- <!-- TODO Should split this file up and use the new classloader -->
- <bean name="BootstrapClassLoader" class="org.jboss.system.NoAnnotationURLClassLoader">
- <classloader><null/></classloader>
- <constructor factoryClass="org.jboss.system.NoAnnotationURLClassLoader" factoryMethod="createClassLoader">
- <parameter>
- <array elementClass="java.net.URL">
- <!-- Deployers -->
- <value>${jboss.lib.url}/jboss-deployers-core-spi.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-core.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-client-spi.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-client.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-structure-spi.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-spi.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-impl.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-vfs-spi.jar</value>
- <value>${jboss.lib.url}/jboss-deployers-vfs.jar</value>
- <!-- System -->
- <value>${jboss.lib.url}/jboss-system.jar</value>
- <!-- JMX -->
- <value>${jboss.lib.url}/jboss-j2se.jar</value>
- <value>${jboss.lib.url}/jboss-mbeans.jar</value>
- <value>${jboss.lib.url}/jboss-jmx.jar</value>
- <value>${jboss.lib.url}/jboss-system-jmx.jar</value>
- <value>${jboss.lib.url}/dom4j.jar</value>
- <!-- AOP -->
- <value>${jboss.lib.url}/jboss-aop-deployer-jdk50.jar</value>
- <value>${jboss.lib.url}/jboss-aop-jboss4-jdk50.jar</value>
- <value>${jboss.lib.url}/jboss-aop-jboss5.jar</value>
- <!-- JAXB - shouldn't this be in endorsed? -->
- <value>${jboss.lib.url}/activation.jar</value>
- <value>${jboss.lib.url}/jaxb-impl.jar</value>
- <value>${jboss.lib.url}/stax-api.jar</value>
- <value>${jboss.lib.url}/wstx.jar</value>
- </array>
- </parameter>
- </constructor>
- </bean>
- <!--
- Valid values for the AspectManager bean for use with enableTransformer=true are:
- * org.jboss.aop.deployers.AspectManagerJDK5 - works with the -javaagent:pluggable-instrumentor.jar switch
- * org.jboss.aop.deployers.AspectManagerJRockit - works with JRockit and the -Xmanagement:class=org.jboss.aop.hook.JRockitPluggableClassPreProcessor switch
- -->
- <bean name="AspectManager" class="org.jboss.aop.deployers.AspectManagerJDK5">
- <constructor>
- <parameter><![CDATA[
- <aop>
- <aspect name="deployers" class="org.jboss.profileservice.aop.DeployerAspects"/>
- <bind pointcut="execution(* $instanceof{org.jboss.deployers.spi.deployer.Deployer}->prepareDeploy(..))">
- <advice name="invoke" aspect="deployers"/>
- </bind>
- <bind pointcut="execution(* $instanceof{org.jboss.deployers.spi.deployer.Deployer}->prepareUndeploy(..))">
- <advice name="invoke" aspect="deployers"/>
- </bind>
- <bind pointcut="execution(* $instanceof{org.jboss.deployers.spi.deployer.Deployer}->commitDeploy(..))">
- <advice name="invoke" aspect="deployers"/>
- </bind>
- <bind pointcut="execution(* $instanceof{org.jboss.deployers.spi.deployer.Deployer}->commitUndeploy(..))">
- <advice name="invoke" aspect="deployers"/>
- </bind>
-
- <aspect name="attachments" class="org.jboss.profileservice.aop.TrackingAdvice"/>
- <bind pointcut="execution(* $instanceof{org.jboss.deployers.spi.attachments.Attachments}->addAttachment(..))">
- <advice name="addAttachment" aspect="attachments"/>
- </bind>
- </aop>]]>
- </parameter>
- </constructor>
- <property name="enableLoadtimeWeaving">false</property>
- <!-- only relevant when EnableLoadtimeWeaving is true.
- When transformer is on, every loaded class gets
- transformed. If AOP can't find the class, then it
- throws an exception. Sometimes, classes may not have
- all the classes they reference. So, the Suppressing
- is needed. (i.e. Jboss cache in the default configuration -->
- <property name="suppressTransformationErrors">true</property>
- <property name="prune">true</property>
- <property name="include">org.jboss.test., org.jboss.injbossaop., org.jboss.deployers.</property>
- <property name="exclude">org.jboss.</property>
- <!-- This avoids instrumentation of hibernate cglib enhanced proxies
- <property name="ignore">*$$EnhancerByCGLIB$$*</property> -->
- <property name="optimized">true</property>
- <property name="verbose">false</property>
- <!--
- Available choices for this attribute are:
- org.jboss.aop.instrument.ClassicInstrumentor (default)
- org.jboss.aop.instrument.GeneratedAdvisorInstrumentor
- <property name="instrumentor">org.jboss.aop.instrument.ClassicInstrumentor</property>
- -->
- </bean>
-
-
- <!-- The file repository profile service which provides full
- support ProfileService spi.
- -->
- <bean name="ProfileService" class="org.jboss.system.server.profileservice.repository.ProfileServiceImpl">
- <constructor>
- <parameter>${jboss.server.name}</parameter>
- </constructor>
- <property name="profileRepository"><inject bean="FileProfileRepository"/></property>
- </bean>
- <bean name="FileProfileRepository" class="org.jboss.system.server.profileservice.repository.FileProfileRepository">
- <property name="storeRoot">${jboss.server.base.dir}</property>
- <property name="repositoryFactory"><inject bean="SerializableDeploymentRepositoryFactory"/></property>
- </bean>
- <bean name="SerializableDeploymentRepositoryFactory" class="org.jboss.system.server.profileservice.repository.SerializableDeploymentRepositoryFactory">
- <property name="storeRoot">${jboss.server.base.dir}</property>
- <property name="applicationURIs">
- <array elementClass="java.net.URI">
- <value>${jboss.server.home.url}/deploy</value>
- </array>
- </property>
- <property name="serializer"><inject bean="JavaSerializationAttachmentsSerializer"/></property>
- </bean>
- <bean name="JavaSerializationAttachmentsSerializer" class="org.jboss.system.server.profileservice.repository.JavaSerializationAttachmentsSerializer">
- <property name="attachmentsStoreDir">${jboss.server.home.dir}/attachments</property>
- </bean>
-
- <bean name="ProfileServiceBootstrap" class="org.jboss.system.server.profileservice.ProfileServiceBootstrap">
- <property name="kernel"><inject bean="jboss.kernel:service=Kernel"/></property>
- </bean>
-
- <!-- The legacy JMX kernel -->
- <bean name="JMXKernel" class="org.jboss.system.server.jmx.JMXKernel">
- <property name="kernel"><inject bean="jboss.kernel:service=Kernel"/></property>
- <property name="serverImpl"><inject bean="JBossServer"/></property>
- <property name="oldClassLoader">false</property>
- </bean>
-
- <!-- Add the JMX -->
- <lifecycle-configure xmlns="urn:jboss:aop-beans:1.0"
- name="JMXRegistrationAdvice"
- class="org.jboss.system.microcontainer.jmx.ServiceControllerRegistrationLifecycleCallback"
- classes="@org.jboss.aop.microcontainer.aspects.jmx.JMX"
- manager-bean="AspectManager"
- manager-property="aspectManager">
- <property name="serviceController"><inject bean="JMXKernel" property="serviceController"/></property>
- </lifecycle-configure>
- <lifecycle-create xmlns="urn:jboss:aop-beans:1.0"
- name="JMXCreateDestroyAdvice"
- class="org.jboss.system.microcontainer.jmx.ServiceControllerCreateDestroyLifecycleCallback"
- classes="@org.jboss.aop.microcontainer.aspects.jmx.JMX"
- manager-bean="AspectManager"
- manager-property="aspectManager">
- <property name="serviceController"><inject bean="JMXKernel" property="serviceController"/></property>
- </lifecycle-create>
- <lifecycle-install xmlns="urn:jboss:aop-beans:1.0"
- name="JMXStartStopAdvice"
- class="org.jboss.system.microcontainer.jmx.ServiceControllerStartStopLifecycleCallback"
- classes="@org.jboss.aop.microcontainer.aspects.jmx.JMX"
- manager-bean="AspectManager"
- manager-property="aspectManager">
- <property name="serviceController"><inject bean="JMXKernel" property="serviceController"/></property>
- </lifecycle-install>
-
- <!-- The MainDeployer -->
- <bean name="MainDeployer" class="org.jboss.deployers.plugins.main.MainDeployerImpl">
- <property name="structuralDeployers"><inject bean="StructuralDeployers"/></property>
- <property name="deployers"><inject bean="Deployers"/></property>
- <property name="mgtDeploymentCreator"><inject bean="ManagedDeploymentCreator"/></property>
- </bean>
-
- <!-- The ManagedDeploymentCreator implementation -->
- <bean name="ManagedDeploymentCreator" class="org.jboss.deployers.plugins.managed.DefaultManagedDeploymentCreator" />
-
- <!-- The holder for deployers that determine structure -->
- <bean name="StructuralDeployers" class="org.jboss.deployers.vfs.plugins.structure.VFSStructuralDeployersImpl">
- <property name="structureBuilder">
- <!-- The consolidator of the structure information -->
- <bean name="StructureBuilder" class="org.jboss.deployers.vfs.plugins.structure.VFSStructureBuilder"/>
- </property>
- <!-- Accept any implementor of structure deployer -->
- <incallback method="addDeployer"/>
- <uncallback method="removeDeployer"/>
- </bean>
-
- <!-- The holder for deployers that do real deployment -->
- <bean name="Deployers" class="org.jboss.deployers.plugins.deployers.DeployersImpl">
- <constructor><parameter><inject bean="jboss.kernel:service=KernelController"/></parameter></constructor>
- <!-- Accept any implementor of deployer -->
- <incallback method="addDeployer"/>
- <uncallback method="removeDeployer"/>
- </bean>
-
- <!-- A declared structure descriptor deployer -->
- <bean name="DeclaredStructure" class="org.jboss.deployers.vfs.plugins.structure.explicit.DeclaredStructure"></bean>
-
- <!-- WAR Structure -->
- <bean name="WARStructure" class="org.jboss.deployers.vfs.plugins.structure.war.WARStructure">
- <property name="webInfLibFilter">
- <!-- We accept all .jar files in WEB-INF/lib -->
- <bean name="WebInfLibFilter" class="org.jboss.virtual.plugins.vfs.helpers.SuffixMatchFilter">
- <constructor><parameter class="java.lang.String">.jar</parameter></constructor>
- </bean>
- </property>
- </bean>
-
- <!-- JAR Structure -->
- <bean name="JARStructure" class="org.jboss.deployers.vfs.plugins.structure.jar.JARStructure">
- <!-- Unless specified the default list of suffixes is .zip, .ear, .jar, ,.rar, .war, .sar, .har, .aop -->
- <constructor>
- <parameter>
- <set elementClass="java.lang.String">
- <value>.zip</value>
- <value>.ear</value>
- <value>.jar</value>
- <value>.rar</value>
- <value>.war</value>
- <value>.sar</value>
- <value>.har</value>
- <value>.aop</value>
- <value>.deployer</value>
- <value>.beans</value>
- </set>
- </parameter>
- </constructor>
- <property name="candidateStructureVisitorFactory">
- <!-- Any file that is not an ordinary directory is a candidate -->
- <bean name="JARStructureCandidates" class="org.jboss.deployers.vfs.spi.structure.helpers.DefaultCandidateStructureVisitorFactory">
- <!-- A filter to exclude some obvious non-subdeployments -->
- <property name="filter">
- <bean name="JARFilter" class="org.jboss.virtual.plugins.vfs.helpers.SuffixesExcludeFilter">
- <constructor><parameter>
- <list elementClass="java.lang.String">
- <!-- Exclude class files as subdeployments -->
- <value>.class</value>
- </list>
- </parameter></constructor>
- </bean>
- </property>
- </bean>
- </property>
- </bean>
-
- <!-- File Structure -->
- <bean name="FileStructure" class="org.jboss.deployers.vfs.plugins.structure.file.FileStructure">
- <!-- Unless specified the default list of suffixes is -service.xml, -beans.xml, -ds.xml, -aop.xml -->
- <constructor>
- <parameter>
- <set elementClass="java.lang.String">
- <value>-service.xml</value>
- <value>-beans.xml</value>
- <value>-ds.xml</value>
- <value>-aop.xml</value>
- </set>
- </parameter>
- </constructor>
- </bean>
-
- <!-- AOP deployment -->
- <bean name="AspectDeployer" class="org.jboss.aop.deployers.AspectDeployer">
- <property name="type">aop</property>
- <property name="aspectManager"><inject bean="AspectManager" property="aspectManager"/></property>
- </bean>
-
- <!-- POJO Deployment -->
- <bean name="BeanDeployer" class="org.jboss.deployers.vfs.deployer.kernel.BeanDeployer">
- <property name="type">beans</property>
- </bean>
- <bean name="KernelDeploymentDeployer" class="org.jboss.deployers.vfs.deployer.kernel.KernelDeploymentDeployer">
- <property name="type">beans</property>
- </bean>
- <bean name="BeanMetaDataDeployer" class="org.jboss.deployers.vfs.deployer.kernel.BeanMetaDataDeployer">
- <constructor><parameter><inject bean="jboss.kernel:service=Kernel"/></parameter></constructor>
- <property name="type">beans</property>
- </bean>
-
- <!-- JMX Deployment -->
- <bean name="ServiceMetaDataICF" class="org.jboss.system.deployers.managed.ServiceMetaDataICF">
- <property name="mbeanServer"><inject bean="JMXKernel" property="mbeanServer"/></property>
- </bean>
- <bean name="SARDeployer" class="org.jboss.system.deployers.SARDeployer">
- <property name="type">sar</property>
- <property name="icf"><inject bean="ServiceMetaDataICF"/></property>
- </bean>
- <bean name="ServiceDeploymentDeployer" class="org.jboss.system.deployers.ServiceDeploymentDeployer">
- <property name="type">sar</property>
- </bean>
- <bean name="ServiceDeployer" class="org.jboss.system.deployers.ServiceDeployer">
- <constructor><parameter><inject bean="JMXKernel" property="serviceController"/></parameter></constructor>
- <property name="type">sar</property>
- </bean>
-
- <!-- UnifiedClassLoader -->
- <!--<bean name="ServiceClassLoaderDeployer" class="org.jboss.system.deployers.ServiceClassLoaderDeployer">
- <constructor><parameter><inject bean="JMXKernel" property="serviceController"/></parameter></constructor>
- </bean>-->
-
- <!-- VFS ClassLoader -->
- <!-- VFS ClassLoader -->
- <bean name="ClassLoaderSystem" class="org.jboss.classloader.spi.ClassLoaderSystem">
- <constructor factoryClass="org.jboss.classloader.spi.ClassLoaderSystem" factoryMethod="getInstance"/>
- </bean>
- <bean name="ClassLoading" class="org.jboss.classloading.spi.dependency.ClassLoading">
- <incallback method="addModule" state="Configured"/>
- <uncallback method="removeModule" state="Configured"/>
- </bean>
- <!-- FIXME Remove this -->
- <bean name="HackClassLoaderMetaDataDeployer" class="org.jboss.system.deployers.HackClassloaderMetaDataDeployer"/>
- <bean name="ClassLoadingMetaDataParser" class="org.jboss.deployers.vfs.spi.deployer.SchemaResolverDeployer">
- <constructor>
- <parameter>org.jboss.classloading.spi.metadata.ClassLoadingMetaData</parameter>
- </constructor>
- <property name="name">jboss-classloading.xml</property>
- <property name="buildManagedObject">true</property>
- </bean>
- <bean name="ClassLoadingDefaultDeployer" class="org.jboss.deployers.plugins.classloading.ClassLoadingDefaultDeployer">
- <property name="defaultMetaData">
- <classloading xmlns="urn:jboss:classloading:1.0" export-all="NON_EMPTY" import-all="true"/>
- </property>
- </bean>
- <bean name="InMemoryClassesDeployer" class="org.jboss.deployers.vfs.plugins.classloader.InMemoryClassesDeployer"/>
- <bean name="ClassLoaderDescribeDeployer" class="org.jboss.deployers.vfs.plugins.classloader.VFSClassLoaderDescribeDeployer">
- <property name="classLoading"><inject bean="ClassLoading"/></property>
- </bean>
- <bean name="ClassLoaderDeployer" class="org.jboss.deployers.plugins.classloading.AbstractLevelClassLoaderSystemDeployer">
- <property name="classLoading"><inject bean="ClassLoading"/></property>
- <property name="system"><inject bean="ClassLoaderSystem"/></property>
- </bean>
-
- <!-- A filter for excluding files from the scanner -->
- <bean name="DeploymentFilter" class="org.jboss.virtual.plugins.vfs.helpers.ExtensibleFilter">
- <!-- Files starting with theses strings are ignored -->
- <property name="prefixes">#,%,\,,.,_$</property>
- <!-- Files ending with theses strings are ignored -->
- <property name="suffixes">#,$,%,~,\,v,.BAK,.bak,.old,.orig,.tmp,.rej,.sh</property>
- <!-- Files matching with theses strings are ignored -->
- <property name="matches">.make.state,.nse_depinfo,CVS,CVS.admin,RCS,RCSLOG,SCCS,TAGS,core,tags</property>
- </bean>
-
-</deployment>
Added: trunk/server/src/etc/conf/default/bootstrap-repo.xml
===================================================================
--- trunk/server/src/etc/conf/default/bootstrap-repo.xml (rev 0)
+++ trunk/server/src/etc/conf/default/bootstrap-repo.xml 2008-05-20 14:24:34 UTC (rev 73524)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ The list of configurations used to bootstrap the server
+ using a repository for the profile service
+-->
+<bootstrap xmlns="urn:jboss:bootstrap:1.0">
+
+ <url>classloader.xml</url>
+ <url>aop.xml</url>
+ <url>jmx.xml</url>
+ <url>deployers.xml</url>
+ <url>profile-service-repository.xml</url>
+
+</bootstrap>
Added: trunk/server/src/etc/conf/default/bootstrap.xml
===================================================================
--- trunk/server/src/etc/conf/default/bootstrap.xml (rev 0)
+++ trunk/server/src/etc/conf/default/bootstrap.xml 2008-05-20 14:24:34 UTC (rev 73524)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ The list of configurations used to bootstrap the server
+ using hot deployment for the profile service
+-->
+<bootstrap xmlns="urn:jboss:bootstrap:1.0">
+
+ <url>classloader.xml</url>
+ <url>aop.xml</url>
+ <url>jmx.xml</url>
+ <url>deployers.xml</url>
+ <url>profile-service.xml</url>
+
+</bootstrap>
Added: trunk/server/src/etc/conf/default/classloader.xml
===================================================================
--- trunk/server/src/etc/conf/default/classloader.xml (rev 0)
+++ trunk/server/src/etc/conf/default/classloader.xml 2008-05-20 14:24:34 UTC (rev 73524)
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ The core classloading system
+-->
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+ <classloader><inject bean="bootstrap-classloader:0.0.0"/></classloader>
+
+ <classloader name="bootstrap-classloader" xmlns="urn:jboss:classloader:1.0" export-all="NON_EMPTY" import-all="true">
+ <!-- FIXME Move to Deployers -->
+ <root>${jboss.lib.url}/jboss-deployers-core-spi.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-core.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-client-spi.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-client.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-structure-spi.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-spi.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-impl.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-vfs-spi.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-vfs.jar</root>
+ <!-- System -->
+ <root>${jboss.lib.url}/jboss-system.jar</root>
+ <!-- FIXME Move to JMX -->
+ <root>${jboss.lib.url}/jboss-j2se.jar</root>
+ <root>${jboss.lib.url}/jboss-mbeans.jar</root>
+ <root>${jboss.lib.url}/jboss-jmx.jar</root>
+ <root>${jboss.lib.url}/jboss-system-jmx.jar</root>
+ <root>${jboss.lib.url}/dom4j.jar</root>
+ <!-- JAXB - shouldn't this be in endorsed? -->
+ <root>${jboss.lib.url}/activation.jar</root>
+ <root>${jboss.lib.url}/jaxb-impl.jar</root>
+ <root>${jboss.lib.url}/stax-api.jar</root>
+ <root>${jboss.lib.url}/wstx.jar</root>
+ </classloader>
+
+ <!--
+ The classloader implementation
+ -->
+ <bean name="ClassLoaderSystem" class="org.jboss.classloader.spi.ClassLoaderSystem">
+ <classloader><null/></classloader>
+ <constructor factoryClass="org.jboss.classloader.spi.ClassLoaderSystem" factoryMethod="getInstance"/>
+ </bean>
+
+ <!--
+ ClassLoader management and resolution
+ -->
+ <bean name="ClassLoading" class="org.jboss.classloading.spi.dependency.ClassLoading">
+ <incallback method="addModule" state="Configured"/>
+ <uncallback method="removeModule" state="Configured"/>
+ </bean>
+
+</deployment>
Added: trunk/server/src/etc/conf/default/deployers.xml
===================================================================
--- trunk/server/src/etc/conf/default/deployers.xml (rev 0)
+++ trunk/server/src/etc/conf/default/deployers.xml 2008-05-20 14:24:34 UTC (rev 73524)
@@ -0,0 +1,173 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ The base deployers
+-->
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+ <classloader><inject bean="deployers-classloader:0.0.0"/></classloader>
+
+ <classloader name="deployers-classloader" xmlns="urn:jboss:classloader:1.0" export-all="NON_EMPTY" import-all="true">
+ <!-- FIXME
+ <root>${jboss.lib.url}/jboss-deployers-core-spi.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-core.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-client-spi.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-client.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-structure-spi.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-spi.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-impl.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-vfs-spi.jar</root>
+ <root>${jboss.lib.url}/jboss-deployers-vfs.jar</root>
+ -->
+ </classloader>
+
+ <!-- The MainDeployer -->
+ <bean name="MainDeployer" class="org.jboss.deployers.plugins.main.MainDeployerImpl">
+ <property name="structuralDeployers"><inject bean="StructuralDeployers"/></property>
+ <property name="deployers"><inject bean="Deployers"/></property>
+ <property name="mgtDeploymentCreator"><inject bean="ManagedDeploymentCreator"/></property>
+ </bean>
+
+ <!-- The ManagedDeploymentCreator implementation -->
+ <bean name="ManagedDeploymentCreator" class="org.jboss.deployers.plugins.managed.DefaultManagedDeploymentCreator" />
+
+ <!-- The holder for deployers that determine structure -->
+ <bean name="StructuralDeployers" class="org.jboss.deployers.vfs.plugins.structure.VFSStructuralDeployersImpl">
+ <property name="structureBuilder">
+ <!-- The consolidator of the structure information -->
+ <bean name="StructureBuilder" class="org.jboss.deployers.vfs.plugins.structure.VFSStructureBuilder"/>
+ </property>
+ <!-- Accept any implementor of structure deployer -->
+ <incallback method="addDeployer"/>
+ <uncallback method="removeDeployer"/>
+ </bean>
+
+ <!-- The holder for deployers that do real deployment -->
+ <bean name="Deployers" class="org.jboss.deployers.plugins.deployers.DeployersImpl">
+ <constructor><parameter><inject bean="jboss.kernel:service=KernelController"/></parameter></constructor>
+ <!-- Accept any implementor of deployer -->
+ <incallback method="addDeployer"/>
+ <uncallback method="removeDeployer"/>
+ </bean>
+
+ <!-- A declared structure descriptor deployer -->
+ <bean name="DeclaredStructure" class="org.jboss.deployers.vfs.plugins.structure.explicit.DeclaredStructure"></bean>
+
+ <!-- WAR Structure -->
+ <bean name="WARStructure" class="org.jboss.deployers.vfs.plugins.structure.war.WARStructure">
+ <property name="webInfLibFilter">
+ <!-- We accept all .jar files in WEB-INF/lib -->
+ <bean name="WebInfLibFilter" class="org.jboss.virtual.plugins.vfs.helpers.SuffixMatchFilter">
+ <constructor><parameter class="java.lang.String">.jar</parameter></constructor>
+ </bean>
+ </property>
+ </bean>
+
+ <!-- JAR Structure -->
+ <bean name="JARStructure" class="org.jboss.deployers.vfs.plugins.structure.jar.JARStructure">
+ <!-- Unless specified the default list of suffixes is .zip, .ear, .jar, ,.rar, .war, .sar, .har, .aop -->
+ <constructor>
+ <parameter>
+ <set elementClass="java.lang.String">
+ <value>.zip</value>
+ <value>.ear</value>
+ <value>.jar</value>
+ <value>.rar</value>
+ <value>.war</value>
+ <value>.sar</value>
+ <value>.har</value>
+ <value>.aop</value>
+ <value>.deployer</value>
+ <value>.beans</value>
+ </set>
+ </parameter>
+ </constructor>
+ <property name="candidateStructureVisitorFactory">
+ <!-- Any file that is not an ordinary directory is a candidate -->
+ <bean name="JARStructureCandidates" class="org.jboss.deployers.vfs.spi.structure.helpers.DefaultCandidateStructureVisitorFactory">
+ <!-- A filter to exclude some obvious non-subdeployments -->
+ <property name="filter">
+ <bean name="JARFilter" class="org.jboss.virtual.plugins.vfs.helpers.SuffixesExcludeFilter">
+ <constructor><parameter>
+ <list elementClass="java.lang.String">
+ <!-- Exclude class files as subdeployments -->
+ <value>.class</value>
+ </list>
+ </parameter></constructor>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ </bean>
+
+ <!-- File Structure -->
+ <bean name="FileStructure" class="org.jboss.deployers.vfs.plugins.structure.file.FileStructure">
+ <!-- Unless specified the default list of suffixes is -service.xml, -beans.xml, -ds.xml, -aop.xml -->
+ <constructor>
+ <parameter>
+ <set elementClass="java.lang.String">
+ <value>-service.xml</value>
+ <value>-beans.xml</value>
+ <value>-ds.xml</value>
+ <value>-aop.xml</value>
+ </set>
+ </parameter>
+ </constructor>
+ </bean>
+
+ <!-- AOP deployment -->
+ <!-- FIXME Replace with org.jboss.aop.deployers.AspectAppParsingDeployer once AOP is released -->
+ <bean name="AspectAppParsingDeployer" class="org.jboss.aop.asintegration.jboss5.AspectAppParsingDeployer"/>
+ <bean name="AspectDeployer" class="org.jboss.aop.deployers.AspectDeployer">
+ <property name="type">aop</property>
+ <property name="aspectManager"><inject bean="AspectManager" property="aspectManager"/></property>
+ </bean>
+
+ <!-- POJO Deployment -->
+ <bean name="BeanDeployer" class="org.jboss.deployers.vfs.deployer.kernel.BeanDeployer">
+ <property name="type">beans</property>
+ </bean>
+ <bean name="KernelDeploymentDeployer" class="org.jboss.deployers.vfs.deployer.kernel.KernelDeploymentDeployer">
+ <property name="type">beans</property>
+ </bean>
+ <bean name="BeanMetaDataDeployer" class="org.jboss.deployers.vfs.deployer.kernel.BeanMetaDataDeployer">
+ <constructor><parameter><inject bean="jboss.kernel:service=Kernel"/></parameter></constructor>
+ <property name="type">beans</property>
+ </bean>
+
+ <!-- JMX Deployment -->
+ <bean name="SARDeployer" class="org.jboss.system.deployers.SARDeployer">
+ <property name="type">sar</property>
+ </bean>
+ <bean name="ServiceDeploymentDeployer" class="org.jboss.system.deployers.ServiceDeploymentDeployer">
+ <property name="type">sar</property>
+ </bean>
+ <bean name="ServiceDeployer" class="org.jboss.system.deployers.ServiceDeployer">
+ <constructor><parameter><inject bean="JMXKernel" property="serviceController"/></parameter></constructor>
+ <property name="type">sar</property>
+ </bean>
+
+ <!-- FIXME Remove this -->
+ <bean name="HackClassLoaderMetaDataDeployer" class="org.jboss.system.deployers.HackClassloaderMetaDataDeployer"/>
+ <bean name="ClassLoadingMetaDataParser" class="org.jboss.deployers.vfs.spi.deployer.SchemaResolverDeployer">
+ <constructor>
+ <parameter>org.jboss.classloading.spi.metadata.ClassLoadingMetaData</parameter>
+ </constructor>
+ <property name="name">jboss-classloading.xml</property>
+ <property name="buildManagedObject">true</property>
+ </bean>
+ <bean name="ClassLoadingDefaultDeployer" class="org.jboss.deployers.plugins.classloading.ClassLoadingDefaultDeployer">
+ <property name="defaultMetaData">
+ <classloading xmlns="urn:jboss:classloading:1.0" export-all="NON_EMPTY" import-all="true"/>
+ </property>
+ </bean>
+ <bean name="InMemoryClassesDeployer" class="org.jboss.deployers.vfs.plugins.classloader.InMemoryClassesDeployer"/>
+ <bean name="ClassLoaderDescribeDeployer" class="org.jboss.deployers.vfs.plugins.classloader.VFSClassLoaderDescribeDeployer">
+ <property name="classLoading"><inject bean="ClassLoading"/></property>
+ </bean>
+ <bean name="ClassLoaderDeployer" class="org.jboss.deployers.plugins.classloading.AbstractLevelClassLoaderSystemDeployer">
+ <property name="classLoading"><inject bean="ClassLoading"/></property>
+ <property name="system"><inject bean="ClassLoaderSystem"/></property>
+ </bean>
+
+</deployment>
Added: trunk/server/src/etc/conf/default/jmx.xml
===================================================================
--- trunk/server/src/etc/conf/default/jmx.xml (rev 0)
+++ trunk/server/src/etc/conf/default/jmx.xml 2008-05-20 14:24:34 UTC (rev 73524)
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ The JMX Subsystem
+-->
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+ <classloader><inject bean="jmx-classloader:0.0.0"/></classloader>
+
+ <classloader name="jmx-classloader" xmlns="urn:jboss:classloader:1.0" export-all="NON_EMPTY" import-all="true">
+ <!-- FIXME
+ <root>${jboss.lib.url}/jboss-j2se.jar</root>
+ <root>${jboss.lib.url}/jboss-mbeans.jar</root>
+ <root>${jboss.lib.url}/jboss-jmx.jar</root>
+ <root>${jboss.lib.url}/jboss-system-jmx.jar</root>
+ <root>${jboss.lib.url}/dom4j.jar</root>
+ -->
+ </classloader>
+
+ <!-- The legacy JMX kernel -->
+ <bean name="JMXKernel" class="org.jboss.system.server.jmx.JMXKernel">
+ <property name="kernel"><inject bean="jboss.kernel:service=Kernel"/></property>
+ <property name="serverImpl"><inject bean="JBossServer"/></property>
+ </bean>
+
+</deployment>
Added: trunk/server/src/etc/conf/default/profile-service-repository.xml
===================================================================
--- trunk/server/src/etc/conf/default/profile-service-repository.xml (rev 0)
+++ trunk/server/src/etc/conf/default/profile-service-repository.xml 2008-05-20 14:24:34 UTC (rev 73524)
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ The profile service
+-->
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+ <classloader><inject bean="profile-service-classloader:0.0.0"/></classloader>
+
+ <classloader name="profile-service-classloader" xmlns="urn:jboss:classloader:1.0" export-all="NON_EMPTY" import-all="true"/>
+
+ <!-- The file repository profile service which provides full
+ support ProfileService spi.
+ -->
+ <bean name="ProfileService" class="org.jboss.system.server.profileservice.repository.ProfileServiceImpl">
+ <constructor>
+ <parameter>${jboss.server.name}</parameter>
+ </constructor>
+ <property name="profileRepository"><inject bean="FileProfileRepository"/></property>
+ </bean>
+ <bean name="FileProfileRepository" class="org.jboss.system.server.profileservice.repository.FileProfileRepository">
+ <property name="storeRoot">${jboss.server.base.dir}</property>
+ <property name="repositoryFactory"><inject bean="SerializableDeploymentRepositoryFactory"/></property>
+ </bean>
+ <bean name="SerializableDeploymentRepositoryFactory" class="org.jboss.system.server.profileservice.repository.SerializableDeploymentRepositoryFactory">
+ <property name="storeRoot">${jboss.server.base.dir}</property>
+ <property name="applicationURIs">
+ <array elementClass="java.net.URI">
+ <value>${jboss.server.home.url}/deploy</value>
+ </array>
+ </property>
+ <property name="serializer"><inject bean="JavaSerializationAttachmentsSerializer"/></property>
+ </bean>
+ <bean name="JavaSerializationAttachmentsSerializer" class="org.jboss.system.server.profileservice.repository.JavaSerializationAttachmentsSerializer">
+ <property name="attachmentsStoreDir">${jboss.server.home.dir}/attachments</property>
+ </bean>
+
+ <bean name="ProfileServiceBootstrap" class="org.jboss.system.server.profileservice.ProfileServiceBootstrap">
+ <property name="kernel"><inject bean="jboss.kernel:service=Kernel"/></property>
+ </bean>
+
+ <!-- A filter for excluding files from the scanner -->
+ <bean name="DeploymentFilter" class="org.jboss.virtual.plugins.vfs.helpers.ExtensibleFilter">
+ <!-- Files starting with theses strings are ignored -->
+ <property name="prefixes">#,%,\,,.,_$</property>
+ <!-- Files ending with theses strings are ignored -->
+ <property name="suffixes">#,$,%,~,\,v,.BAK,.bak,.old,.orig,.tmp,.rej,.sh</property>
+ <!-- Files matching with theses strings are ignored -->
+ <property name="matches">.make.state,.nse_depinfo,CVS,CVS.admin,RCS,RCSLOG,SCCS,TAGS,core,tags</property>
+ </bean>
+
+</deployment>
Added: trunk/server/src/etc/conf/default/profile-service.xml
===================================================================
--- trunk/server/src/etc/conf/default/profile-service.xml (rev 0)
+++ trunk/server/src/etc/conf/default/profile-service.xml 2008-05-20 14:24:34 UTC (rev 73524)
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ The profile service
+-->
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+ <classloader><inject bean="profile-service-classloader:0.0.0"/></classloader>
+
+ <classloader name="profile-service-classloader" xmlns="urn:jboss:classloader:1.0" export-all="NON_EMPTY" import-all="true"/>
+
+ <!-- The basic profile service which relies on vfs scanners
+ to determine the profile deployments. This version does not
+ support the full ProfileService spi.
+ -->
+ <bean name="ProfileService" class="org.jboss.system.server.profileservice.basic.ProfileServiceImpl">
+ <constructor>
+ <parameter>${jboss.server.name}</parameter>
+ </constructor>
+ <property name="profileRoot">${jboss.server.home.dir}</property>
+ </bean>
+
+ <bean name="ProfileServiceBootstrap" class="org.jboss.system.server.profileservice.ProfileServiceBootstrap">
+ <property name="kernel"><inject bean="jboss.kernel:service=Kernel"/></property>
+ </bean>
+
+ <!-- A filter for excluding files from the scanner -->
+ <bean name="DeploymentFilter" class="org.jboss.virtual.plugins.vfs.helpers.ExtensibleFilter">
+ <!-- Files starting with theses strings are ignored -->
+ <property name="prefixes">#,%,\,,.,_$</property>
+ <!-- Files ending with theses strings are ignored -->
+ <property name="suffixes">#,$,%,~,\,v,.BAK,.bak,.old,.orig,.tmp,.rej,.sh</property>
+ <!-- Files matching with theses strings are ignored -->
+ <property name="matches">.make.state,.nse_depinfo,CVS,CVS.admin,RCS,RCSLOG,SCCS,TAGS,core,tags</property>
+ </bean>
+
+ <!-- Scan for bootstraps -->
+ <bean name="VFSBootstrapScanner" class="org.jboss.system.server.profileservice.VFSBootstrapScannerImpl">
+ <property name="profileService"><inject bean="ProfileService"/></property>
+ <property name="filterInstance"><inject bean="DeploymentFilter"/></property>
+ <property name="URIList">
+ <list elementClass="java.net.URI">
+ <!-- Legacy static conf/jboss-service.xml -->
+ <value>${jboss.server.home.url}conf/jboss-service.xml</value>
+ </list>
+ </property>
+ </bean>
+
+ <!-- Scan for deployers -->
+ <bean name="VFSDeployerScanner" class="org.jboss.system.server.profileservice.VFSDeployerScannerImpl">
+ <property name="profileService"><inject bean="ProfileService"/></property>
+ <property name="filterInstance"><inject bean="DeploymentFilter"/></property>
+ <property name="URIList">
+ <list elementClass="java.net.URI">
+ <!-- Directory for deployers -->
+ <value>${jboss.server.home.url}deployers/</value>
+ </list>
+ </property>
+ </bean>
+
+ <!-- Scan for applications -->
+ <bean name="VFSDeploymentScanner" class="org.jboss.system.server.profileservice.VFSDeploymentScannerImpl">
+ <property name="profileService"><inject bean="ProfileService"/></property>
+ <property name="filterInstance"><inject bean="DeploymentFilter"/></property>
+ <property name="URIList">
+ <list elementClass="java.net.URI">
+ <!-- Standard hot deployment directory -->
+ <value>${jboss.server.home.url}deploy/</value>
+ </list>
+ </property>
+ </bean>
+
+ <!-- Hotdeployment of applications -->
+ <bean name="HDScanner"
+ class="org.jboss.system.server.profileservice.hotdeploy.HDScanner">
+ <property name="mainDeployer"><inject bean="MainDeployer"/></property>
+ <!-- Workaround for JBMICROCONT-176
+ -->
+ <property name="controller"><inject bean="jboss.kernel:service=KernelController"/></property>
+ <!-- Broken due to JBMICROCONT-176
+ <property name="controller"><inject bean="jboss.kernel:service=Kernel" property="controller"/></property>
+ -->
+ <property name="profileService"><inject bean="ProfileService"/></property>
+ <property name="scanPeriod">5000</property>
+ <property name="scanThreadName">HDScanner</property>
+ </bean>
+
+</deployment>
Modified: trunk/system/src/main/org/jboss/system/server/profileservice/ProfileServiceBootstrap.java
===================================================================
--- trunk/system/src/main/org/jboss/system/server/profileservice/ProfileServiceBootstrap.java 2008-05-20 14:24:11 UTC (rev 73523)
+++ trunk/system/src/main/org/jboss/system/server/profileservice/ProfileServiceBootstrap.java 2008-05-20 14:24:34 UTC (rev 73524)
@@ -41,9 +41,7 @@
import org.jboss.system.server.Server;
/**
- * An extension of the kernel basic bootstrap that boots the mc from
- * {profileName}/bootstrap-beans.xml descriptors using the BasicXMLDeployer, and
- * loads additional deployments using the ProfileService.
+ * Bootstraps the profile service
*
* @author Scott.Stark at jboss.org
* @author adrian at jboss.org
Modified: trunk/system-jmx/src/main/org/jboss/system/server/jmx/JMXKernel.java
===================================================================
--- trunk/system-jmx/src/main/org/jboss/system/server/jmx/JMXKernel.java 2008-05-20 14:24:11 UTC (rev 73523)
+++ trunk/system-jmx/src/main/org/jboss/system/server/jmx/JMXKernel.java 2008-05-20 14:24:34 UTC (rev 73524)
@@ -497,10 +497,6 @@
private ClassLoader initBootLibraries() throws Exception
{
ClassLoaderSystem system = ClassLoaderSystem.getInstance();
-
- // FIXME
- ClassLoaderDomain defaultDomain = system.getDefaultDomain();
- defaultDomain.setParent(new ClassLoaderToLoaderAdapter(getClass().getClassLoader()));
mbeanServer.registerMBean(system, new ObjectName("jboss.classloader:service=ClassLoaderSystem"));
List<URL> list = getBootURLs();
Modified: trunk/testsuite/imports/server-config.xml
===================================================================
--- trunk/testsuite/imports/server-config.xml 2008-05-20 14:24:11 UTC (rev 73523)
+++ trunk/testsuite/imports/server-config.xml 2008-05-20 14:24:34 UTC (rev 73524)
@@ -838,8 +838,8 @@
<include name="deployers/**"/>
</fileset>
</copy>
- <copy file="${jboss.dist}/server/@{conf}/conf/bootstrap-repo-beans.xml"
- tofile="${jboss.dist}/server/@{conf}/conf/bootstrap-beans.xml" overwrite="true"/>
+ <copy file="${jboss.dist}/server/@{conf}/conf/bootstrap-repo.xml"
+ tofile="${jboss.dist}/server/@{conf}/conf/bootstrap.xml" overwrite="true"/>
<copy file="${jboss.dist}/server/@{conf}/deployers/profileservice-beans.xml.bak"
tofile="${jboss.dist}/server/@{conf}/deployers/profileservice-beans.xml" overwrite="true"/>
<!-- Overwrite any config content with that from the
More information about the jboss-cvs-commits
mailing list