Return-Path: Delivered-To: apmail-geronimo-dev-archive@www.apache.org Received: (qmail 52066 invoked from network); 3 Jul 2008 20:20:52 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 3 Jul 2008 20:20:52 -0000 Received: (qmail 50967 invoked by uid 500); 3 Jul 2008 20:20:50 -0000 Delivered-To: apmail-geronimo-dev-archive@geronimo.apache.org Received: (qmail 50916 invoked by uid 500); 3 Jul 2008 20:20:50 -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 50900 invoked by uid 99); 3 Jul 2008 20:20:50 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 03 Jul 2008 13:20:50 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy) Received: from [209.86.89.65] (HELO elasmtp-kukur.atl.sa.earthlink.net) (209.86.89.65) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 03 Jul 2008 20:19:58 +0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=dk20050327; d=earthlink.net; b=kYR0yYAwDk4YkCfxt+E0SJNx8krMrFvN6gEyFnKlMRucpkwYaeY5AxwHJNswA8PZ; h=Received:Message-ID:Date:From:User-Agent:MIME-Version:To:Subject:References:In-Reply-To:Content-Type:Content-Transfer-Encoding:X-ELNK-Trace:X-Originating-IP; Received: from [129.33.49.251] (helo=tetra.raleigh.ibm.com) by elasmtp-kukur.atl.sa.earthlink.net with esmtpa (Exim 4.67) (envelope-from ) id 1KEVHW-0001E1-Rx for dev@geronimo.apache.org; Thu, 03 Jul 2008 16:19:55 -0400 Message-ID: <486D346A.4020504@earthlink.net> Date: Thu, 03 Jul 2008 16:19:54 -0400 From: Joe Bohn User-Agent: Thunderbird 2.0.0.14 (Macintosh/20080421) MIME-Version: 1.0 To: dev@geronimo.apache.org Subject: Re: version compatibility plugin? References: <486BA2DC.4080205@earthlink.net> <059F2165-0B08-4453-9680-BD43FD662B09@yahoo.com> <486BE628.5040809@earthlink.net> In-Reply-To: <486BE628.5040809@earthlink.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-ELNK-Trace: c408501814fc19611aa676d7e74259b7b3291a7d08dfec797e48efc2371ad926776d15ca8a4b65c4350badd9bab72f9c350badd9bab72f9c350badd9bab72f9c X-Originating-IP: 129.33.49.251 X-Virus-Checked: Checked by ClamAV on apache.org Joe Bohn wrote: > David Jencks wrote: >> Can you check if the plugin installer gbean is using the artifact >> resolver that knows about the aliases you installed? If it's directly >> accessing the repository we need to change it to use the appropriate >> artifact resolver (after figuring out which artifact resolver that is) >> > > Thanks for the help David. > > I'm still not sure exactly why this isn't working yet but I did learn a > few things: > > - The PluginInstallerGBean is using an ArtifactResolver as it should be > and not accessing the repository directly. > - Checking the ArtifactResolver instance shows that it is actually using > the ExplicitDefaultArtifactResolver class. > - When I install my compatibility plugin I can see the point in the > PluginGBeanInstaller where it calls ExplicitDefaultArtifactResolver to > add the alias entries. > - It appears to be the same instance of the > ExplicitDefaultArtifactResolver for both adding the entries and when we > later check to for items like the jasper 2.1 car file dependency later on. > - When we query the artifact resolver for the jasper configID (via > queryArtifacts()) it does not come back with a match for some reason. It > seems that queryArtifacts() is inherited from DefaultArtifactResolver > and it's not clear to me if this class takes into consideration aliases > that were added. > > still looking ... Ok, I confirmed that DefaultArtifactResolver.queryArtifacts() was not including aliases for the query ... hence the problem. Thanks to a good pointer from David Jencks I was able to easily add this into the query. I created GERONIMO-4182 for this problem and checked in a fix for 2.1.2-SNAPSHOT and 2.2-SNAPSHOT. Unfortunately, that means that we won't be able to use a version compatibility plugin for anything prior to 2.1.2/2.2 ... so we will need to come up with another solution for samples or other plugins created for Geronimo 2.1 that we want to run on Geronimo 2.1.1. Joe > > Joe > > > >> thanks >> david jencks >> >> On Jul 2, 2008, at 8:46 AM, Joe Bohn wrote: >> >>> I attempted to create a version compatibility plugin such that >>> plugins with dependencies on 2.1 artifacts could attempt to be >>> installed in a 2.2-SNAPSHOT server image (mapping 2.1 car artifacts >>> to 2.2-SNAPSHOT car artifacts). However, thus far I'm not having any >>> success. >>> >>> The plugin is fairly simple. Just a bunch of entries for artifact >>> aliases and no other content: >>> >>> >>> ... >>> >> key="org.apache.geronimo.configs/jasper//car">org.apache.geronimo.configs/jasper/2.2-SNAPSHOT/car >>> >>> >> key="org.apache.geronimo.configs/jasper/2.1/car">org.apache.geronimo.configs/jasper/2.2-SNAPSHOT/car >>> >>> ... >>> >>> I also verified that after installing the compatibility plugin that >>> the entries are added to the artifact-aliases.properties file in >>> var/config: >>> >>> ... >>> org.apache.geronimo.configs/jasper//car=org.apache.geronimo.configs/jasper/2.2-SNAPSHOT/car >>> >>> org.apache.geronimo.configs/jasper/2.1/car=org.apache.geronimo.configs/jasper/2.2-SNAPSHOT/car >>> >>> ... >>> >>> >>> Yet, even with these entries, I still get essentially the same error >>> attempting to install samples created for 2.1 in a 2.2-SNAPSHOT >>> server as I had without the artifact-alias entries. I showed the >>> jasper entries above because that is the missing dependency when I >>> attempt to install the Tomcat JSP example plugin created for 2.1 on >>> 2.2-SNAPSHOT (see error below). I had similar results on a 2.1.1 >>> server when I attempted to use a another compatibility plugin mapping >>> 2.1 cars to 2.1.1. Am I missing something obvious? >>> >>> 11:22:45,918 ERROR [PluginInstallerGBean] Unable to install plugin >>> org.apache.geronimo.kernel.repository.MissingDependencyException: >>> Plugin is not installable on Geronimo 2.2-SNAPSHOT >>> Missing dependency: org.apache.geronimo.configs/jasper/2.1/car >>> at >>> org.apache.geronimo.system.plugin.PluginInstallerGBean.validatePlugin(PluginInstallerGBean.java:920) >>> >>> at >>> org.apache.geronimo.system.plugin.PluginInstallerGBean.downloadArtifact(PluginInstallerGBean.java:1081) >>> >>> ... >>> >>> Joe >> >> > >