From beb2d3fc8e196f60efa90a9b03f037f674eb90be Mon Sep 17 00:00:00 2001 From: markt Date: Tue, 8 Mar 2011 15:58:53 +0000 Subject: [PATCH] Expose the global naming context for all Server implementations git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@1079405 13f79535-47bb-0310-9956-ffa450edef68 --- java/org/apache/catalina/Server.java | 6 ++++++ java/org/apache/catalina/core/StandardServer.java | 1 + java/org/apache/catalina/manager/ManagerServlet.java | 4 ++-- java/org/apache/catalina/realm/DataSourceRealm.java | 4 +--- java/org/apache/catalina/realm/UserDatabaseRealm.java | 4 +--- 5 files changed, 11 insertions(+), 8 deletions(-) diff --git a/java/org/apache/catalina/Server.java b/java/org/apache/catalina/Server.java index 5e36f05d9..6b4a05490 100644 --- a/java/org/apache/catalina/Server.java +++ b/java/org/apache/catalina/Server.java @@ -76,6 +76,12 @@ public interface Server extends Lifecycle { /** + * Return the global naming resources context. + */ + public javax.naming.Context getGlobalNamingContext(); + + + /** * Return the port number we listen to for shutdown commands. */ public int getPort(); diff --git a/java/org/apache/catalina/core/StandardServer.java b/java/org/apache/catalina/core/StandardServer.java index f529ab796..7c8ec0cb9 100644 --- a/java/org/apache/catalina/core/StandardServer.java +++ b/java/org/apache/catalina/core/StandardServer.java @@ -173,6 +173,7 @@ public final class StandardServer extends LifecycleMBeanBase implements Server { /** * Return the global naming resources context. */ + @Override public javax.naming.Context getGlobalNamingContext() { return (this.globalNamingContext); diff --git a/java/org/apache/catalina/manager/ManagerServlet.java b/java/org/apache/catalina/manager/ManagerServlet.java index bf1e8f5fc..72cf687ce 100644 --- a/java/org/apache/catalina/manager/ManagerServlet.java +++ b/java/org/apache/catalina/manager/ManagerServlet.java @@ -457,8 +457,8 @@ public class ManagerServlet extends HttpServlet implements ContainerServlet { // Acquire global JNDI resources if available Server server = ((Engine)host.getParent()).getService().getServer(); - if ((server != null) && (server instanceof StandardServer)) { - global = ((StandardServer) server).getGlobalNamingContext(); + if (server != null) { + global = server.getGlobalNamingContext(); } // Calculate the directory into which we will be deploying applications diff --git a/java/org/apache/catalina/realm/DataSourceRealm.java b/java/org/apache/catalina/realm/DataSourceRealm.java index e013bcedc..4777251be 100644 --- a/java/org/apache/catalina/realm/DataSourceRealm.java +++ b/java/org/apache/catalina/realm/DataSourceRealm.java @@ -30,7 +30,6 @@ import javax.naming.Context; import javax.sql.DataSource; import org.apache.catalina.LifecycleException; -import org.apache.catalina.core.StandardServer; import org.apache.naming.ContextBindings; /** @@ -390,8 +389,7 @@ public class DataSourceRealm context = ContextBindings.getClassLoader(); context = (Context) context.lookup("comp/env"); } else { - context = - ((StandardServer)getServer()).getGlobalNamingContext(); + context = getServer().getGlobalNamingContext(); } DataSource dataSource = (DataSource)context.lookup(dataSourceName); return dataSource.getConnection(); diff --git a/java/org/apache/catalina/realm/UserDatabaseRealm.java b/java/org/apache/catalina/realm/UserDatabaseRealm.java index 2f8af4374..bc07925be 100644 --- a/java/org/apache/catalina/realm/UserDatabaseRealm.java +++ b/java/org/apache/catalina/realm/UserDatabaseRealm.java @@ -32,7 +32,6 @@ import org.apache.catalina.Role; import org.apache.catalina.User; import org.apache.catalina.UserDatabase; import org.apache.catalina.Wrapper; -import org.apache.catalina.core.StandardServer; import org.apache.tomcat.util.ExceptionUtils; @@ -252,8 +251,7 @@ public class UserDatabaseRealm protected void startInternal() throws LifecycleException { try { - Context context = - ((StandardServer)getServer()).getGlobalNamingContext(); + Context context = getServer().getGlobalNamingContext(); database = (UserDatabase) context.lookup(resourceName); } catch (Throwable e) { ExceptionUtils.handleThrowable(e); -- 2.11.0