Return-Path: Delivered-To: apmail-incubator-aries-dev-archive@minotaur.apache.org Received: (qmail 92536 invoked from network); 17 Feb 2010 19:56:52 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 17 Feb 2010 19:56:52 -0000 Received: (qmail 12780 invoked by uid 500); 17 Feb 2010 19:56:52 -0000 Delivered-To: apmail-incubator-aries-dev-archive@incubator.apache.org Received: (qmail 12708 invoked by uid 500); 17 Feb 2010 19:56:51 -0000 Mailing-List: contact aries-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: aries-dev@incubator.apache.org Delivered-To: mailing list aries-dev@incubator.apache.org Received: (qmail 12698 invoked by uid 99); 17 Feb 2010 19:56:51 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 17 Feb 2010 19:56:51 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 17 Feb 2010 19:56:49 +0000 Received: from brutus.apache.org (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id D5C05234C1F0 for ; Wed, 17 Feb 2010 11:56:27 -0800 (PST) Message-ID: <793513377.342521266436587860.JavaMail.jira@brutus.apache.org> Date: Wed, 17 Feb 2010 19:56:27 +0000 (UTC) From: "Roland Huss (JIRA)" To: aries-dev@incubator.apache.org Subject: [jira] Commented: (ARIES-178) PackageMBean.listPackages() raises an exception for certain bundles in Felix 2.0.3 In-Reply-To: <633843634.342101266434910408.JavaMail.jira@brutus.apache.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/ARIES-178?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12834964#action_12834964 ] Roland Huss commented on ARIES-178: ----------------------------------- BTW, the reason that org.springframework.ws.soap.addressing.server is contained twice is connected to the fragment spring-ws-core-tiger-1.5.9.jar (also installed) which overwrites certain packages in spring-ws-core.1.5.9.jar: [osgi] : ls *ws.core* Id State Lev Name --------------------------------------------------------------------------------------- 41 Active 5 Spring WS Core (1.5.9) 277 Installed 1 Spring WS Core - Java 5 (1.5.9) [osgi] : ls 277 Name: 277 Spring WS Core - Java 5 org.springframework.bundle.ws.core-tiger [Installed] Location: file:///Users/roland/.m2/repository/org/springframework/ws/spring-ws-core-tiger/1.5.9/spring-ws-core-tiger-1.5.9.jar Imports: javax.xml.namespace javax.xml.transform javax.xml.transform.dom javax.xml.xpath * org.apache.commons.logging org.springframework.aop.support [2.0,4.0) org.springframework.beans [2.0,4.0) org.springframework.beans.factory [2.0,4.0) org.springframework.beans.factory.config [2.0,4.0) org.springframework.context [2.0,4.0) org.springframework.core.annotation [2.0,4.0) org.springframework.oxm [1.5.9,1.5.9] org.springframework.stereotype [2.0,4.0) org.springframework.util [2.0,4.0) org.springframework.ws [1.5.9,1.5.9] org.springframework.ws.context [1.5.9,1.5.9] org.springframework.ws.server [1.5.9,1.5.9] org.springframework.ws.server.endpoint [1.5.9,1.5.9] org.springframework.ws.server.endpoint.adapter [1.5.9,1.5.9] org.springframework.ws.server.endpoint.annotation [1.5.9,1.5.9] org.springframework.ws.server.endpoint.mapping [1.5.9,1.5.9] org.springframework.ws.server.endpoint.support [1.5.9,1.5.9] org.springframework.ws.soap [1.5.9,1.5.9] org.springframework.ws.soap.addressing.core [1.5.9,1.5.9] org.springframework.ws.soap.addressing.server [1.5.9,1.5.9] org.springframework.ws.soap.addressing.server.annotation [1.5.9,1.5.9] org.springframework.ws.soap.server [1.5.9,1.5.9] org.springframework.ws.soap.server.endpoint [1.5.9,1.5.9] org.springframework.ws.soap.server.endpoint.annotation [1.5.9,1.5.9] org.springframework.ws.soap.server.endpoint.mapping [1.5.9,1.5.9] org.springframework.xml.namespace [1.5.9,1.5.9] org.w3c.dom [osgi] : > PackageMBean.listPackages() raises an exception for certain bundles in Felix 2.0.3 > ---------------------------------------------------------------------------------- > > Key: ARIES-178 > URL: https://issues.apache.org/jira/browse/ARIES-178 > Project: Aries > Issue Type: Bug > Components: JMX > Affects Versions: Incubation > Reporter: Roland Huss > Attachments: patch.txt > > > Using PackageStateMBean.listPackages() gives the following exception on Felix 2.0.3 for certain bundles (here: spring-ws-core-1.5.9.jar) > Caused by: javax.management.openmbean.KeyAlreadyExistsException: Argument value's index, calculated according to this TabularData instance's tabularType, already refers to a value in this table. > at javax.management.openmbean.TabularDataSupport.checkValueAndIndex(TabularDataSupport.java:871) > at javax.management.openmbean.TabularDataSupport.internalPut(TabularDataSupport.java:331) > at javax.management.openmbean.TabularDataSupport.put(TabularDataSupport.java:323) > at org.apache.aries.jmx.codec.PackageData.tableFrom(PackageData.java:142) > at org.apache.aries.jmx.framework.PackageState.listPackages(PackageState.java:130) > ... > The original reason for this is that Felix returns multiple identical ExportedPackage when calling > ExportedPackage[] PackageAdmin.getExportedPackages(bundle) > (in this example, org.springframework.ws.soap.addressing.server; version=1.5.9 is given twice) > I don't know whether this is allowed by the Spec (or is in fact a bug in Felix), but Aries could be smarter here anyway. > Since each ExportedPackage is wrapped in a PackageData for JMX-Export and then added to a Set all > what is needed to add appropriate equals() and hashCode() to PackageData to make the set contain only PackageData > with a unique index (NAME, VERSION, EXPORTING_BUNDLE) for the TabularData to build up for the JMX return value. > Please find attachted a patch to add equals() and hashCode() to PackageData. > My question though is, whether this an allowed behaviour of Felix to return same ExportedPackage objects multiple times > in getExportedPackages() (so that in case I could rise an issue for Felix as well). -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.