Return-Path: X-Original-To: apmail-geronimo-dev-archive@www.apache.org Delivered-To: apmail-geronimo-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 8BE986CEB for ; Fri, 3 Jun 2011 19:56:34 +0000 (UTC) Received: (qmail 15237 invoked by uid 500); 3 Jun 2011 19:56:34 -0000 Delivered-To: apmail-geronimo-dev-archive@geronimo.apache.org Received: (qmail 15197 invoked by uid 500); 3 Jun 2011 19:56:34 -0000 Mailing-List: contact dev-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list dev@geronimo.apache.org Received: (qmail 15188 invoked by uid 99); 3 Jun 2011 19:56:34 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 03 Jun 2011 19:56:34 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=5.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy) Received: from [209.174.123.75] (HELO samarium-v1.sys.ma.cait.org) (209.174.123.75) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 03 Jun 2011 19:56:26 +0000 Received: from samarium-v2.sys.ma.cait.org ([209.174.123.67] helo=vanadium.sys.ma.cait.org) by samarium-v1.sys.ma.cait.org with esmtp (Exim 4.63) (envelope-from ) id 1QSaTV-0002VR-Ic for dev@geronimo.apache.org; Fri, 03 Jun 2011 14:56:06 -0500 Received: from localhost (localhost.localdomain [127.0.0.1]) by vanadium.sys.ma.cait.org (Postfix) with ESMTP id 895388694002 for ; Fri, 3 Jun 2011 14:56:05 -0500 (CDT) X-Virus-Scanned: amavisd-new at vanadium.sys.ma.cait.org Received: from vanadium.sys.ma.cait.org ([127.0.0.1]) by localhost (vanadium.sys.ma.cait.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6ehGDyyotSDl for ; Fri, 3 Jun 2011 14:56:05 -0500 (CDT) Received: from russ-linux.cait.org (unknown [10.0.0.18]) by vanadium.sys.ma.cait.org (Postfix) with ESMTPSA id 693EC8694001 for ; Fri, 3 Jun 2011 14:56:05 -0500 (CDT) Message-ID: <4DE93C55.9010107@cait.org> Date: Fri, 03 Jun 2011 14:56:05 -0500 From: Russell E Glaue User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.9) Gecko/20100317 Lightning/1.0b1 Thunderbird/3.0.4 MIME-Version: 1.0 To: dev@geronimo.apache.org Subject: Re: ActiveMQ config-substitution change G2.2 vs G3.0 References: <4DE91B0D.9060806@cait.org> <7E63E3D8-0C84-486E-AB05-0DBD9C2F005F@yahoo.com> <4DE92AD0.9000302@cait.org> <4DE92EBA.80705@cait.org> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Spam-Score: -2.6 (--) Yes, I like the Karaf support and the new OSGi implementation in G3.0. I have not worked with the OSGi DS, so I have little more than textbook knowledge about it. But, when you get to the point of integrating the DS support I would like to be engaged. Maybe I can help get the ActiveMQ plugin straightened out - if my limited knowledge of DS does not get in the way. I need to get past this ActiveMQ issue to move on in my agenda. Thanks. -RG On 06/03/2011 02:45 PM, David Jencks wrote: > Hi Russell, > > I think DS is considerably more lightweight and easier to use and more suitable for server components than blueprint. I'm working through some jcdi problems right now but expect to be adding DS support into geronimo trunk in the next few days. > > Blueprint has completely replaced our use of spring -- which was entirely for amq IIRC. There are now quite a few aries services configured through blueprint as well. > > I think there are some other felix/karaf services that should make it easier to set up something with config admin and the amq xbean-blueprint, I'm hoping to be looking into adding these in the next few days. At that point it will probably be possible to at least configure the port even if the portOffset doesn't work right. > > thanks > david jencks > > On Jun 3, 2011, at 11:58 AM, Russell E Glaue wrote: > >> David, >> >> In GERONIMO-4499 Ivan origianly had ActiveMQ reading configuration from a file, >> which you rejected at the time because Geronimo could not inject properties. >> That is why he added the gbean implementation of the >> GeronimoPropertyPlaceholderConfigurer class. >> >> Though I agree with your reasoning, right now ActiveMQ is completely >> unconfigurable from an admin point. I would accept that option right now until >> we can figure out how to support config-substitution on blueprint or DS. >> >> Either that or trying to reimplement the resulting accepted solution currently >> in G2.2 if that can be support whil running on blueprint. >> >> (Is blueprint now completely replacing any prior use of spring in all G2.2 >> plugins - since it is essentially Spring-DM? That would remove our ability to >> try the G2.2 solution directly.) >> >> -RG >> >> >> On 06/03/2011 01:41 PM, Russell E Glaue wrote: >>> Hi David, >>> >>> Does Geornimo support OSGi Declarative Services (DS) now? >>> I understand the DS requires a lot of underlying supporting code to implement it >>> in a greater application. >>> >>> If the DS part of OSGi is not ready yet in Geronimo, I would prefer a short-cut >>> be implemented in the interim. Not being able to run multiple instances on a >>> single server is a show-stopper for me. >>> >>> And there is no viable work-around (other than recompiling the code) since >>> ActiveMQ's listen-port and working-directory are not configurable in a run-time >>> deployment. >>> >>> >>> So, when ActiveMQ was reimplemented with Blueprint in G3.0, the >>> GeronimoPropertyPlaceholderConfigurer class was removed, which was the G2.2 >>> work-around to make the config-substitution work. >>> The primary item in that class is its extension of the >>> org.springframework.beans.factory.config.PropertyPlaceholderConfigurer class to >>> make that work. >>> >>> Was there a reason to remove this class before an alternative solution for >>> supporting config-substitution was ready? >>> >>> -RG >>> >>> >>> On 06/03/2011 01:11 PM, David Jencks wrote: >>>> Hi Russell, >>>> >>>> thanks for looking into this in such detail :-) >>>> >>>> When I worked on the blueprint and xbean-blueprint conversion I couldn't figure out how to do this. Since then I've started thinking that it would make more sense to configure activemq with Declarative Services rather than blueprint and configure the variable bits such as transports with the feature that produces a service for every Config Admin configuration (I get lost in the terminology, I think this is a managed service factory). However I haven't had any time to look into this. >>>> >>>> not much help but that's where my thinking is at the moment. >>>> >>>> david jencks >>>> >>>> On Jun 3, 2011, at 10:34 AM, Russell E Glaue wrote: >>>> >>>>> ActiveMQ is not utilizing the config-substitutions in G3.0 >>>>> A patch was put in G2.2 do handle this, but the related code is removed in G3.0. >>>>> ActiveMQ is changed in the process of integrating blueprint. See GERONIMO-4475 >>>>> for the G2.2 patches from Ivan. >>>>> >>>>> Since the GeronimoPropertyPlaceholderConfigurer in G2.2 was to make ActiveMQ use >>>>> the config-substitution, and now is removed in G3.0, I do not see in the code >>>>> where the config-substitution is accounted for. >>>>> >>>>> >>>>> In G2.2.2-SNAPSHOT >>>>> The GBean Class: >>>>> ~/branches/2.2/plugins/activemq/geronimo-activemq/src/main/java/org/apache/geronimo/activemq/GeronimoPropertyPlaceholderConfigurer.java >>>>> The GBean Configuration: >>>>> ~/branches/2.2/plugins/activemq/activemq-broker/src/main/resources/activemq.xml >>>>> - >>>>> >>>>> >>>> class="org.apache.geronimo.activemq.GeronimoPropertyPlaceholderConfigurer"> >>>>> >>>>> >>>>> >>>>> >>>>> ${activemq.geronimo.home.url}/var/config/config-substitutions.properties >>>>> >>>>> >>>>> 2 >>>>> >>>>> >>>>> - >>>>> >>>>> In G3.0-SNAPSHOT >>>>> ~/trunk/plugins/activemq/activemq-broker-blueprint/src/main/resources/OSGI-INF/blueprint/activemq.xml >>>>> - >>>>> >>>> persistent-id="blueprint-activemq-placeholder" placeholder-prefix="${" >>>>> placeholder-suffix="}" ignore-missing-locations="true"> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> file:$(karaf.base)/etc/blueprint-activemq-placeholder.cfg >>>>> >>>>> - >>>>> As I mentioned in a previous thread on the user list, the >>>>> file:$(karaf.base)/etc/blueprint-activemq-placeholder.cfg is ignored. I tried to >>>>> change the ActiveMQ values there in >>>>> GERONIMO_HOME/etc/blueprint-activemq-placeholder.cfg, but ActiveMQ did not use >>>>> the new configuration I set. >>>>> (I am testing with G3.0-20110603-snapshot) >>>>> >>>>> So the question is, what has to be done in G3.0-SNAPSHOT to make ActiveMQ apply >>>>> settings from the config-substitutions file? >>>>> >>>>> -RG >>>> >