geronimo-scm mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jgenen...@apache.org
Subject svn commit: r156002 - in geronimo/trunk/modules: assembly/src/plan/ jetty-builder/src/test/org/apache/geronimo/jetty/deployment/ jetty/src/test/org/apache/geronimo/jetty/ security/src/java/org/apache/geronimo/security/ tomcat/src/test/org/apache/geronimo/tomcat/
Date Thu, 03 Mar 2005 02:58:59 GMT
Author: jgenender
Date: Wed Mar  2 18:58:57 2005
New Revision: 156002

URL: http://svn.apache.org/viewcvs?view=rev&rev=156002
Log:
Added system var overrides for Security and ssl attributes to the SecurityServiceImpl

Added:
    geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/SecurityService.java
Modified:
    geronimo/trunk/modules/assembly/src/plan/j2ee-deployer-plan.xml
    geronimo/trunk/modules/assembly/src/plan/j2ee-server-plan.xml
    geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty/deployment/JettyModuleBuilderTest.java
    geronimo/trunk/modules/jetty/src/test/org/apache/geronimo/jetty/AbstractWebModuleTest.java
    geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/SecurityServiceImpl.java
    geronimo/trunk/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java

Modified: geronimo/trunk/modules/assembly/src/plan/j2ee-deployer-plan.xml
URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/j2ee-deployer-plan.xml?view=diff&r1=156001&r2=156002
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/j2ee-deployer-plan.xml (original)
+++ geronimo/trunk/modules/assembly/src/plan/j2ee-deployer-plan.xml Wed Mar  2 18:58:57 2005
@@ -155,6 +155,7 @@
 
     <gbean namePart="SecurityService" class="org.apache.geronimo.security.SecurityServiceImpl">
         <attribute name="policyConfigurationFactory">org.apache.geronimo.security.jacc.GeronimoPolicyConfigurationFactory</attribute>
+        <attribute name="policyProvider">org.apache.geronimo.security.jacc.GeronimoPolicy</attribute>
     </gbean>
 
     <gbean namePart="WebBuilder" class="org.apache.geronimo.jetty.deployment.JettyModuleBuilder">

Modified: geronimo/trunk/modules/assembly/src/plan/j2ee-server-plan.xml
URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/j2ee-server-plan.xml?view=diff&r1=156001&r2=156002
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/j2ee-server-plan.xml (original)
+++ geronimo/trunk/modules/assembly/src/plan/j2ee-server-plan.xml Wed Mar  2 18:58:57 2005
@@ -152,7 +152,9 @@
     </gbean>
 
     <gbean namePart="SecurityService" class="org.apache.geronimo.security.SecurityServiceImpl">
+        <reference name="ServerInfo">geronimo.server:name=ServerInfo,*</reference>
         <attribute name="policyConfigurationFactory">org.apache.geronimo.security.jacc.GeronimoPolicyConfigurationFactory</attribute>
+        <attribute name="policyProvider">org.apache.geronimo.security.jacc.GeronimoPolicy</attribute>
     </gbean>
 
     <gbean namePart="JaasLoginService" class="org.apache.geronimo.security.jaas.JaasLoginService">

Modified: geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty/deployment/JettyModuleBuilderTest.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty/deployment/JettyModuleBuilderTest.java?view=diff&r1=156001&r2=156002
==============================================================================
--- geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty/deployment/JettyModuleBuilderTest.java
(original)
+++ geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty/deployment/JettyModuleBuilderTest.java
Wed Mar  2 18:58:57 2005
@@ -64,6 +64,7 @@
 import org.apache.geronimo.kernel.management.State;
 import org.apache.geronimo.kernel.registry.BasicGBeanRegistry;
 import org.apache.geronimo.security.SecurityServiceImpl;
+import org.apache.geronimo.system.serverinfo.ServerInfo;
 import org.apache.geronimo.transaction.context.TransactionContextManager;
 import org.apache.geronimo.transaction.manager.TransactionManagerImpl;
 import org.apache.geronimo.xbeans.j2ee.ServiceRefHandlerType;
@@ -78,6 +79,10 @@
     private ObjectName containerName;
     private ObjectName connectorName;
     private GBeanData connector;
+    private GBeanData securityServiceGBean;
+    private ObjectName securityServiceName;
+    private ObjectName serverInfoName;
+    private GBeanData serverInfoGBean;
     private ObjectName tmName;
     private ObjectName ctcName;
     private GBeanData tm;
@@ -154,43 +159,43 @@
                         return null;
                     }
                 },
-                        new ResourceReferenceBuilder() {
+                new ResourceReferenceBuilder() {
 
-                            public Reference createResourceRef(String containerId, Class
iface) throws DeploymentException {
-                                return null;
-                            }
-
-                            public Reference createAdminObjectRef(String containerId, Class
iface) throws DeploymentException {
-                                return null;
-                            }
-
-                            public ObjectName locateResourceName(ObjectName query) throws
DeploymentException {
-                                return null;
-                            }
-
-                            public GBeanData locateActivationSpecInfo(ObjectName resourceAdapterName,
String messageListenerInterface) throws DeploymentException {
-                                return null;
-                            }
-
-                            public GBeanData locateResourceAdapterGBeanData(ObjectName resourceAdapterModuleName)
throws DeploymentException {
-                                return null;
-                            }
-
-                            public GBeanData locateAdminObjectInfo(ObjectName resourceAdapterModuleName,
String adminObjectInterfaceName) throws DeploymentException {
-                                return null;
-                            }
-
-                            public GBeanData locateConnectionFactoryInfo(ObjectName resourceAdapterModuleName,
String connectionFactoryInterfaceName) throws DeploymentException {
-                                return null;
-                            }
-                        },
-                        new ServiceReferenceBuilder() {
-                            //it could return a Service or a Reference, we don't care
-                            public Object createService(Class serviceInterface, URI wsdlURI,
URI jaxrpcMappingURI, QName serviceQName, Map portComponentRefMap, List handlerInfos, Map
portLocationMap, DeploymentContext deploymentContext, Module module, ClassLoader classLoader)
throws DeploymentException {
-                                return null;
-                            }
-                        }, kernel));
-        return earContext;
+                    public Reference createResourceRef(String containerId, Class iface) throws
DeploymentException {
+                        return null;
+                    }
+
+                    public Reference createAdminObjectRef(String containerId, Class iface)
throws DeploymentException {
+                        return null;
+                    }
+
+                    public ObjectName locateResourceName(ObjectName query) throws DeploymentException
{
+                        return null;
+                    }
+
+                    public GBeanData locateActivationSpecInfo(ObjectName resourceAdapterName,
String messageListenerInterface) throws DeploymentException {
+                        return null;
+                    }
+
+                    public GBeanData locateResourceAdapterGBeanData(ObjectName resourceAdapterModuleName)
throws DeploymentException {
+                        return null;
+                    }
+
+                    public GBeanData locateAdminObjectInfo(ObjectName resourceAdapterModuleName,
String adminObjectInterfaceName) throws DeploymentException {
+                        return null;
+                    }
+
+                    public GBeanData locateConnectionFactoryInfo(ObjectName resourceAdapterModuleName,
String connectionFactoryInterfaceName) throws DeploymentException {
+                        return null;
+                    }
+                },
+                new ServiceReferenceBuilder() {
+                    //it could return a Service or a Reference, we don't care
+                    public Object createService(Class serviceInterface, URI wsdlURI, URI
jaxrpcMappingURI, QName serviceQName, Map portComponentRefMap, List handlerInfos, Map portLocationMap,
DeploymentContext deploymentContext, Module module, ClassLoader classLoader) throws DeploymentException
{
+                        return null;
+                    }
+                }, kernel));
+                return earContext;
     }
 
     private void recursiveDelete(File path) {
@@ -209,7 +214,7 @@
         cl = this.getClass().getClassLoader();
         containerName = NameFactory.getWebComponentName(null, null, null, null, "jettyContainer",
"WebResource", moduleContext);
         connectorName = NameFactory.getWebComponentName(null, null, null, null, "jettyConnector",
"WebResource", moduleContext);
-//        webModuleName = NameFactory.getWebComponentName(null, null, null, null, NameFactory.WEB_MODULE,
"WebResource", moduleContext);
+        //        webModuleName = NameFactory.getWebComponentName(null, null, null, null,
NameFactory.WEB_MODULE, "WebResource", moduleContext);
 
         tmName = NameFactory.getComponentName(null, null, null, null, null, "TransactionManager",
NameFactory.JTA_RESOURCE, moduleContext);
         tcmName = NameFactory.getComponentName(null, null, null, null, null, "TransactionContextManager",
NameFactory.JTA_RESOURCE, moduleContext);
@@ -229,8 +234,20 @@
         ObjectName defaultServlets = ObjectName.getInstance("test:name=test,type=none,*");
         ObjectName pojoWebServiceTemplate = null;
         WebServiceBuilder webServiceBuilder = null;
+
+        serverInfoName = new ObjectName("geronimo.system:name=ServerInfo");
+        serverInfoGBean = new GBeanData(serverInfoName, ServerInfo.GBEAN_INFO);
+        serverInfoGBean.setAttribute("baseDirectory", ".");
+        start(serverInfoGBean);
+
         //install the policy configuration factory
-        SecurityServiceImpl securityService = new SecurityServiceImpl(null, "org.apache.geronimo.security.jacc.GeronimoPolicyConfigurationFactory",
null);
+        securityServiceName = new ObjectName("foo:j2eeType=SecurityService");
+        securityServiceGBean = new GBeanData(securityServiceName, SecurityServiceImpl.GBEAN_INFO);
+        securityServiceGBean.setReferencePattern("ServerInfo", serverInfoName);
+        securityServiceGBean.setAttribute("policyConfigurationFactory", "org.apache.geronimo.security.jacc.GeronimoPolicyConfigurationFactory");
+        securityServiceGBean.setAttribute("policyProvider", "org.apache.geronimo.security.jacc.GeronimoPolicy");
+        start(securityServiceGBean);
+
 
         builder = new JettyModuleBuilder(new URI("null"), new Integer(1800), Collections.EMPTY_LIST,
containerName, defaultServlets, null, null, pojoWebServiceTemplate, webServiceBuilder, null,
kernel);
 
@@ -261,6 +278,8 @@
     protected void tearDown() throws Exception {
         stop(ctcName);
         stop(tmName);
+        stop(serverInfoName);
+        stop(securityServiceName);
         stop(connectorName);
         stop(containerName);
         kernel.shutdown();

Modified: geronimo/trunk/modules/jetty/src/test/org/apache/geronimo/jetty/AbstractWebModuleTest.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/jetty/src/test/org/apache/geronimo/jetty/AbstractWebModuleTest.java?view=diff&r1=156001&r2=156002
==============================================================================
--- geronimo/trunk/modules/jetty/src/test/org/apache/geronimo/jetty/AbstractWebModuleTest.java
(original)
+++ geronimo/trunk/modules/jetty/src/test/org/apache/geronimo/jetty/AbstractWebModuleTest.java
Wed Mar  2 18:58:57 2005
@@ -167,9 +167,15 @@
         configurations.add(new ObjectName("geronimo.server:j2eeType=ConfigurationEntry,*"));
         loginConfigurationGBean.setReferencePatterns("Configurations", configurations);
 
+        serverInfoName = new ObjectName("geronimo.system:name=ServerInfo");
+        serverInfoGBean = new GBeanData(serverInfoName, ServerInfo.GBEAN_INFO);
+        serverInfoGBean.setAttribute("baseDirectory", ".");
+
         securityServiceName = new ObjectName("geronimo.server:j2eeType=SecurityService");
         securityServiceGBean = new GBeanData(securityServiceName, SecurityServiceImpl.GBEAN_INFO);
+        securityServiceGBean.setReferencePattern("ServerInfo", serverInfoName);
         securityServiceGBean.setAttribute("policyConfigurationFactory", "org.apache.geronimo.security.jacc.GeronimoPolicyConfigurationFactory");
+        securityServiceGBean.setAttribute("policyProvider", "org.apache.geronimo.security.jacc.GeronimoPolicy");
 
         loginServiceName = JaasLoginService.OBJECT_NAME;
         loginServiceGBean = new GBeanData(loginServiceName, JaasLoginService.GBEAN_INFO);
@@ -178,10 +184,6 @@
         loginServiceGBean.setAttribute("algorithm", "HmacSHA1");
         loginServiceGBean.setAttribute("password", "secret");
 
-        serverInfoName = new ObjectName("geronimo.system:name=ServerInfo");
-        serverInfoGBean = new GBeanData(serverInfoName, ServerInfo.GBEAN_INFO);
-        serverInfoGBean.setAttribute("baseDirectory", ".");
-
         propertiesLMName = new ObjectName("geronimo.security:type=LoginModule,name=demo-properties-login");
         propertiesLMGBean = new GBeanData(propertiesLMName, LoginModuleGBean.GBEAN_INFO);
         propertiesLMGBean.setAttribute("loginModuleClass", "org.apache.geronimo.security.realm.providers.PropertiesFileLoginModule");
@@ -205,9 +207,9 @@
         propertiesRealmGBean.setAttribute("defaultPrincipal", principalEditor.getValue());
 
         start(loginConfigurationGBean);
+        start(serverInfoGBean);
         start(securityServiceGBean);
         start(loginServiceGBean);
-        start(serverInfoGBean);
         start(propertiesLMGBean);
         start(propertiesRealmGBean);
 
@@ -216,9 +218,9 @@
     protected void tearDownSecurity() throws Exception {
         stop(propertiesRealmName);
         stop(propertiesLMName);
-        stop(serverInfoName);
         stop(loginServiceName);
         stop(securityServiceName);
+        stop(serverInfoName);
         stop(loginConfigurationName);
     }
 

Added: geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/SecurityService.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/SecurityService.java?view=auto&rev=156002
==============================================================================
--- geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/SecurityService.java
(added)
+++ geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/SecurityService.java
Wed Mar  2 18:58:57 2005
@@ -0,0 +1,26 @@
+/**
+ *
+ * Copyright 2003-2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.geronimo.security;
+
+public interface SecurityService {
+    public final static String POLICY_CONFIG_FACTORY = "javax.security.jacc.PolicyConfigurationFactory.provider";
+    public final static String POLICY_PROVIDER = "javax.security.jacc.policy.provider";
+    public final static String KEYSTORE = "javax.net.ssl.keyStore";
+    public final static String KEYSTORE_PASSWORD = "javax.net.ssl.keyStorePassword";
+    public final static String TRUSTSTORE = "javax.net.ssl.trustStore";
+    public final static String TRUSTSTORE_PASSWORD = "javax.net.ssl.trustStorePassword";
+}

Modified: geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/SecurityServiceImpl.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/SecurityServiceImpl.java?view=diff&r1=156001&r2=156002
==============================================================================
--- geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/SecurityServiceImpl.java
(original)
+++ geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/SecurityServiceImpl.java
Wed Mar  2 18:58:57 2005
@@ -17,19 +17,19 @@
 
 package org.apache.geronimo.security;
 
-import java.security.Policy;
-import javax.security.jacc.PolicyConfigurationFactory;
-import javax.security.jacc.PolicyContextException;
-
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.geronimo.gbean.GBeanInfo;
 import org.apache.geronimo.gbean.GBeanInfoBuilder;
-import org.apache.geronimo.security.jacc.GeronimoPolicy;
 import org.apache.geronimo.security.jacc.PolicyContextHandlerContainerSubject;
 import org.apache.geronimo.security.jacc.PolicyContextHandlerHttpServletRequest;
 import org.apache.geronimo.security.jacc.PolicyContextHandlerSOAPMessage;
 import org.apache.geronimo.security.util.ConfigurationUtil;
+import org.apache.geronimo.system.serverinfo.ServerInfo;
+
+import javax.security.jacc.PolicyConfigurationFactory;
+import javax.security.jacc.PolicyContextException;
+import java.security.Policy;
 
 
 /**
@@ -37,10 +37,12 @@
  *
  * @version $Rev$ $Date$
  */
-public class SecurityServiceImpl {
+public class SecurityServiceImpl implements SecurityService {
 
     public static boolean POLICY_INSTALLED = false;
 
+    private final ServerInfo serverInfo;
+
     private final Log log = LogFactory.getLog(SecurityServiceImpl.class);
 
     /**
@@ -48,7 +50,13 @@
      */
     public static final GeronimoSecurityPermission CONFIGURE = new GeronimoSecurityPermission("configure");
 
-    public SecurityServiceImpl(ClassLoader classLoader, String policyConfigurationFactory,
String policyProvider) throws PolicyContextException, ClassNotFoundException, IllegalAccessException,
InstantiationException {
+    public SecurityServiceImpl(ClassLoader classLoader, ServerInfo serverInfo, String policyConfigurationFactory,
+                               String policyProvider, String keyStore, String keyStorePassword,
+                               String trustStore, String trustStorePassword)
+            throws PolicyContextException, ClassNotFoundException, IllegalAccessException,
InstantiationException {
+
+        this.serverInfo = serverInfo;
+
         /**
          *  @see "JSR 115 4.6.1" Container Subject Policy Context Handler
          */
@@ -56,44 +64,51 @@
         ConfigurationUtil.registerPolicyContextHandler(new PolicyContextHandlerSOAPMessage(),
true);
         ConfigurationUtil.registerPolicyContextHandler(new PolicyContextHandlerHttpServletRequest(),
true);
 
-        /**
-         * javax.security.jacc.PolicyConfigurationFactory.provider gets preference over policyConfigurationFactory
-         */
-        String sysFactory = System.getProperty("javax.security.jacc.PolicyConfigurationFactory.provider");
-        if (sysFactory != null)
-            policyConfigurationFactory = sysFactory;
-        if (policyConfigurationFactory != null) {
-            System.setProperty("javax.security.jacc.PolicyConfigurationFactory.provider",
policyConfigurationFactory);
-        }
-
-        /**
-         * javax.security.jacc.policy.provider gets preference over policyProvider
-         */
-
-        if (!POLICY_INSTALLED){
-            String sysProvider = System.getProperty("javax.security.jacc.policy.provider");
-            if (sysProvider != null)
-                policyProvider = sysProvider;
+        if (!POLICY_INSTALLED) {
+            policyProvider = sysOverRide(policyProvider, POLICY_PROVIDER);
 
             if (policyProvider != null) {
-                System.setProperty("javax.security.jacc.policy.provider", policyProvider);
-                Policy customPolicy = (Policy) classLoader.loadClass(policyProvider).newInstance();
-                customPolicy.refresh();
-                Policy.setPolicy(customPolicy);
-            } else {
-                Policy gPolicy = new GeronimoPolicy();
-                gPolicy.refresh();
-                Policy.setPolicy(gPolicy);
+                Policy policy = (Policy) classLoader.loadClass(policyProvider).newInstance();
+                policy.refresh();
+                Policy.setPolicy(policy);
             }
 
             POLICY_INSTALLED = true;
         }
 
-        PolicyConfigurationFactory.getPolicyConfigurationFactory();
+        policyConfigurationFactory = sysOverRide(policyConfigurationFactory, POLICY_CONFIG_FACTORY);
+        if (policyConfigurationFactory != null)
+            PolicyConfigurationFactory.getPolicyConfigurationFactory();
+
+        if (keyStore != null)
+            keyStore = sysOverRide(serverInfo.resolvePath(keyStore), KEYSTORE);
+        sysOverRide(keyStorePassword, KEYSTORE_PASSWORD);
+
+        if (trustStore != null)
+            trustStore = sysOverRide(serverInfo.resolvePath(trustStore), TRUSTSTORE);
+        sysOverRide(trustStore, TRUSTSTORE);
+        sysOverRide(trustStorePassword, TRUSTSTORE_PASSWORD);
 
         log.info("JACC factory registered");
     }
 
+    private String sysOverRide(String attribute, String sysVar) {
+
+        String sysValue = System.getProperty(sysVar);
+
+        /**
+         * System variable gets highest priority
+         */
+        if (sysValue != null)
+            return sysValue;
+
+        if (attribute != null) {
+            System.setProperty(sysVar, attribute);
+        }
+
+        return attribute;
+
+    }
 
     public static final GBeanInfo GBEAN_INFO;
 
@@ -101,10 +116,17 @@
         GBeanInfoBuilder infoFactory = new GBeanInfoBuilder(SecurityServiceImpl.class);
 
         infoFactory.addAttribute("classLoader", ClassLoader.class, false);
+        infoFactory.addReference("ServerInfo", ServerInfo.class);
         infoFactory.addAttribute("policyConfigurationFactory", String.class, true);
         infoFactory.addAttribute("policyProvider", String.class, true);
-
-        infoFactory.setConstructor(new String[]{"classLoader", "policyConfigurationFactory",
"policyProvider"});
+        infoFactory.addAttribute("keyStore", String.class, true);
+        infoFactory.addAttribute("keyStorePassword", String.class, true);
+        infoFactory.addAttribute("trustStore", String.class, true);
+        infoFactory.addAttribute("trustStorePassword", String.class, true);
+
+        infoFactory.setConstructor(new String[]{"classLoader", "ServerInfo", "policyConfigurationFactory",
+                                                "policyProvider", "keyStore", "keyStorePassword",
"trustStore",
+                                                "trustStorePassword"});
 
         GBEAN_INFO = infoFactory.getBeanInfo();
     }

Modified: geronimo/trunk/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java?view=diff&r1=156001&r2=156002
==============================================================================
--- geronimo/trunk/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java
(original)
+++ geronimo/trunk/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java
Wed Mar  2 18:58:57 2005
@@ -200,7 +200,9 @@
 
         securityServiceName = new ObjectName("geronimo.server:j2eeType=SecurityService");
         securityServiceGBean = new GBeanData(securityServiceName, SecurityServiceImpl.GBEAN_INFO);
+        securityServiceGBean.setReferencePattern("ServerInfo", serverInfoName);
         securityServiceGBean.setAttribute("policyConfigurationFactory", "org.apache.geronimo.security.jacc.GeronimoPolicyConfigurationFactory");
+        securityServiceGBean.setAttribute("policyProvider", "org.apache.geronimo.security.jacc.GeronimoPolicy");
 
         loginServiceName = JaasLoginService.OBJECT_NAME;
         loginServiceGBean = new GBeanData(loginServiceName, JaasLoginService.GBEAN_INFO);



Mime
View raw message