Return-Path: Delivered-To: apmail-geronimo-scm-archive@www.apache.org Received: (qmail 78191 invoked from network); 27 Mar 2008 12:39:10 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 27 Mar 2008 12:39:10 -0000 Received: (qmail 4917 invoked by uid 500); 27 Mar 2008 12:39:09 -0000 Delivered-To: apmail-geronimo-scm-archive@geronimo.apache.org Received: (qmail 4861 invoked by uid 500); 27 Mar 2008 12:39:09 -0000 Mailing-List: contact scm-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 scm@geronimo.apache.org Received: (qmail 4852 invoked by uid 99); 27 Mar 2008 12:39:09 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 27 Mar 2008 05:39:09 -0700 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.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 27 Mar 2008 12:38:27 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 3CDBA1A9832; Thu, 27 Mar 2008 05:38:47 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r641794 - /geronimo/server/branches/2.1/plugins/system-database/sysdb-portlets/src/main/java/org/apache/geronimo/console/internaldb/DerbyConnectionUtil.java Date: Thu, 27 Mar 2008 12:38:46 -0000 To: scm@geronimo.apache.org From: vamsic007@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080327123847.3CDBA1A9832@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: vamsic007 Date: Thu Mar 27 05:38:44 2008 New Revision: 641794 URL: http://svn.apache.org/viewvc?rev=641794&view=rev Log: GERONIMO-3875 Enabling authentication for Derby renders DB Viewer portlet unusable for all db's except SystemDatabase o Enables using DB portlet for databases with connection pools defined. Modified: geronimo/server/branches/2.1/plugins/system-database/sysdb-portlets/src/main/java/org/apache/geronimo/console/internaldb/DerbyConnectionUtil.java Modified: geronimo/server/branches/2.1/plugins/system-database/sysdb-portlets/src/main/java/org/apache/geronimo/console/internaldb/DerbyConnectionUtil.java URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/system-database/sysdb-portlets/src/main/java/org/apache/geronimo/console/internaldb/DerbyConnectionUtil.java?rev=641794&r1=641793&r2=641794&view=diff ============================================================================== --- geronimo/server/branches/2.1/plugins/system-database/sysdb-portlets/src/main/java/org/apache/geronimo/console/internaldb/DerbyConnectionUtil.java (original) +++ geronimo/server/branches/2.1/plugins/system-database/sysdb-portlets/src/main/java/org/apache/geronimo/console/internaldb/DerbyConnectionUtil.java Thu Mar 27 05:38:44 2008 @@ -26,11 +26,16 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.apache.geronimo.console.util.KernelManagementHelper; +import org.apache.geronimo.console.util.ManagementHelper; import org.apache.geronimo.derby.DerbySystemGBean; import org.apache.geronimo.gbean.AbstractName; import org.apache.geronimo.gbean.AbstractNameQuery; +import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory; +import org.apache.geronimo.kernel.Kernel; import org.apache.geronimo.kernel.KernelRegistry; import org.apache.geronimo.management.JCAManagedConnectionFactory; +import org.apache.geronimo.management.geronimo.ResourceAdapterModule; /** * A static class to handle retreiving connections. This class is built to @@ -183,6 +188,25 @@ } catch (Exception e) { log.error("Problem getting datasource " + dbName, e); } + + Kernel kernel = KernelRegistry.getSingleKernel(); + ManagementHelper helper = new KernelManagementHelper(kernel); + ResourceAdapterModule[] modules = helper.getOutboundRAModules(helper.getDomains()[0].getServerInstances()[0], "javax.sql.DataSource"); + for (ResourceAdapterModule module : modules) { + org.apache.geronimo.management.geronimo.JCAManagedConnectionFactory[] databases = helper.getOutboundFactories(module, "javax.sql.DataSource"); + for (org.apache.geronimo.management.geronimo.JCAManagedConnectionFactory db : databases) { + try { + Object databaseName = db.getConfigProperty("DatabaseName"); + if(dbName.equalsIgnoreCase((String) databaseName)) { + AbstractName tempDbName = helper.getNameFor(db); + return (DataSource) KernelRegistry.getSingleKernel().invoke( + tempDbName, "$getResource"); + } + } catch (Exception ignored) { + } + } + } + return null; }