Return-Path: Delivered-To: apmail-incubator-openejb-commits-archive@locus.apache.org Received: (qmail 9906 invoked from network); 6 Oct 2006 07:24:29 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 6 Oct 2006 07:24:29 -0000 Received: (qmail 71710 invoked by uid 500); 6 Oct 2006 07:24:29 -0000 Delivered-To: apmail-incubator-openejb-commits-archive@incubator.apache.org Received: (qmail 71662 invoked by uid 500); 6 Oct 2006 07:24:29 -0000 Mailing-List: contact openejb-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: openejb-dev@incubator.apache.org Delivered-To: mailing list openejb-commits@incubator.apache.org Received: (qmail 71652 invoked by uid 99); 6 Oct 2006 07:24:28 -0000 Received: from idunn.apache.osuosl.org (HELO idunn.apache.osuosl.org) (140.211.166.84) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Oct 2006 00:24:28 -0700 X-ASF-Spam-Status: No, hits=-9.4 required=5.0 tests=ALL_TRUSTED,NO_REAL_NAME Received: from [140.211.166.113] ([140.211.166.113:59258] helo=eris.apache.org) by idunn.apache.osuosl.org (ecelerity 2.1.1.8 r(12930)) with ESMTP id 0D/40-17714-8A406254 for ; Fri, 06 Oct 2006 00:24:26 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id AB6FB1A981A; Fri, 6 Oct 2006 00:24:22 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r453521 - in /incubator/openejb/trunk/openejb3: container/openejb-core/ container/openejb-core/src/main/resources/META-INF/org.apache.openejb/ server/openejb-server/src/main/java/org/apache/openejb/server/ server/openejb-server/src/main/res... Date: Fri, 06 Oct 2006 07:24:22 -0000 To: openejb-commits@incubator.apache.org From: jlaskowski@apache.org X-Mailer: svnmailer-1.1.0 Message-Id: <20061006072422.AB6FB1A981A@eris.apache.org> X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: jlaskowski Date: Fri Oct 6 00:24:21 2006 New Revision: 453521 URL: http://svn.apache.org/viewvc?view=rev&rev=453521 Log: Decouple startup classes and let XBean "assemble" OpenEJB server Added: incubator/openejb/trunk/openejb3/server/openejb-server/src/main/resources/META-INF/openejb-server.xml (with props) Modified: incubator/openejb/trunk/openejb3/container/openejb-core/pom.xml incubator/openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/spring.xml incubator/openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/spring2.xml incubator/openejb/trunk/openejb3/server/openejb-server/src/main/java/org/apache/openejb/server/Main.java incubator/openejb/trunk/openejb3/server/openejb-server/src/main/java/org/apache/openejb/server/Server.java Modified: incubator/openejb/trunk/openejb3/container/openejb-core/pom.xml URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/container/openejb-core/pom.xml?view=diff&rev=453521&r1=453520&r2=453521 ============================================================================== --- incubator/openejb/trunk/openejb3/container/openejb-core/pom.xml (original) +++ incubator/openejb/trunk/openejb3/container/openejb-core/pom.xml Fri Oct 6 00:24:21 2006 @@ -76,7 +76,7 @@ org.apache.xbean maven-xbean-plugin - 2.6 + 2.7-SNAPSHOT @@ -85,7 +85,8 @@ - http://openejb.org/schemas/core + + http://openejb.apache.org/schemas/core org.apache.openejb.alt.config.ejb,org.apache.openejb.util.io @@ -234,9 +235,17 @@ org.apache.xbean xbean-spring - 2.6 + 2.7-SNAPSHOT + + + + + org.springframework + spring + 2.0-rc3 + Modified: incubator/openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/spring.xml URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/spring.xml?view=diff&rev=453521&r1=453520&r2=453521 ============================================================================== --- incubator/openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/spring.xml (original) +++ incubator/openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/spring.xml Fri Oct 6 00:24:21 2006 @@ -21,7 +21,7 @@ - + Modified: incubator/openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/spring2.xml URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/spring2.xml?view=diff&rev=453521&r1=453520&r2=453521 ============================================================================== --- incubator/openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/spring2.xml (original) +++ incubator/openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/spring2.xml Fri Oct 6 00:24:21 2006 @@ -1,7 +1,7 @@ - + Modified: incubator/openejb/trunk/openejb3/server/openejb-server/src/main/java/org/apache/openejb/server/Main.java URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/server/openejb-server/src/main/java/org/apache/openejb/server/Main.java?view=diff&rev=453521&r1=453520&r2=453521 ============================================================================== --- incubator/openejb/trunk/openejb3/server/openejb-server/src/main/java/org/apache/openejb/server/Main.java (original) +++ incubator/openejb/trunk/openejb3/server/openejb-server/src/main/java/org/apache/openejb/server/Main.java Fri Oct 6 00:24:21 2006 @@ -23,7 +23,15 @@ import org.apache.openejb.loader.SystemInstance; import org.apache.openejb.util.JarUtils; - +import org.apache.xbean.spring.context.ClassPathXmlApplicationContext; +import org.apache.xbean.spring.context.SpringApplicationContext; +import org.apache.xbean.spring.context.v2.XBeanXmlBeanFactory; +import org.springframework.context.support.AbstractXmlApplicationContext; +import org.springframework.core.io.ClassPathResource; + +/** + * Assemble OpenEJB instance and boot it up + */ public class Main { private static final String helpBase = "META-INF/org.apache.openejb.cli/"; @@ -44,6 +52,13 @@ } } + /** + * Parse arguments and override any {@link System} properties returned via {@link System#getProperties()}. + * + * @param args command line arguments + * @return properties as defined in System and on the command line + * @throws DontStartServerException thrown as an indication to not boot up OpenEJB instance, e.g. after printing out properties, help, etc. + */ private static Properties parseArguments(String args[]) throws DontStartServerException { Properties props = new Properties(); props.putAll(System.getProperties()); @@ -173,7 +188,12 @@ } private static void initServer(Properties props) throws Exception { - Server server = new Server(); + //Server server = new Server(); +// FIXME: XBeanXmlBeanFactory vs AbstractXmlApplicationContext +// XBeanXmlBeanFactory factory = new XBeanXmlBeanFactory(new ClassPathResource("META-INF/openejb-server.xml")); +// Server server = (Server) factory.getBean("server"); + SpringApplicationContext factory = new ClassPathXmlApplicationContext("META-INF/openejb-server.xml"); + Server server = (Server) factory.getBean("server"); server.init(props); server.start(); } Modified: incubator/openejb/trunk/openejb3/server/openejb-server/src/main/java/org/apache/openejb/server/Server.java URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/server/openejb-server/src/main/java/org/apache/openejb/server/Server.java?view=diff&rev=453521&r1=453520&r2=453521 ============================================================================== --- incubator/openejb/trunk/openejb3/server/openejb-server/src/main/java/org/apache/openejb/server/Server.java (original) +++ incubator/openejb/trunk/openejb3/server/openejb-server/src/main/java/org/apache/openejb/server/Server.java Fri Oct 6 00:24:21 2006 @@ -25,6 +25,14 @@ import org.apache.openejb.util.Messages; import org.apache.openejb.util.SafeToolkit; +/** + * @org.apache.xbean.XBean + * namespace="http://openejb.apache.org/schemas/openejb" + * element="server" + * description="OpenEJB Server" + * + * @version $Rev$ $Date$ + */ public class Server implements org.apache.openejb.spi.Service { private SafeToolkit toolkit = SafeToolkit.getToolkit("OpenEJB EJB Server"); @@ -53,7 +61,10 @@ System.out.println("[init] OpenEJB Remote Server"); } - manager = ServiceManager.getManager(); + // it's injected by XBean + // @see openejb-server.xml + // FIXME: Remove it once we're certain it works well (which should be in a couple of commits) + //manager = ServiceManager.getManager(); manager.init(); } @@ -69,8 +80,6 @@ } -// public void addService(ServerService ) - public static class ServerServiceFactory { public ServerService createService(URI location) throws IOException { String scheme = location.getScheme(); @@ -79,5 +88,8 @@ } } + public void setServiceManager(ServiceManager serviceManager) { + this.manager = serviceManager; + } } Added: incubator/openejb/trunk/openejb3/server/openejb-server/src/main/resources/META-INF/openejb-server.xml URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/server/openejb-server/src/main/resources/META-INF/openejb-server.xml?view=auto&rev=453521 ============================================================================== --- incubator/openejb/trunk/openejb3/server/openejb-server/src/main/resources/META-INF/openejb-server.xml (added) +++ incubator/openejb/trunk/openejb3/server/openejb-server/src/main/resources/META-INF/openejb-server.xml Fri Oct 6 00:24:21 2006 @@ -0,0 +1,30 @@ + + + + + + + + + + + + + Propchange: incubator/openejb/trunk/openejb3/server/openejb-server/src/main/resources/META-INF/openejb-server.xml ------------------------------------------------------------------------------ svn:executable = *