You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by Jarek Gawor <jg...@gmail.com> on 2008/08/12 17:38:05 UTC

Re: svn commit: r685070 - in /geronimo/server/trunk: ./ buildsupport/car-maven-plugin/ framework/configs/j2ee-security/ framework/configs/j2ee-system/ framework/configs/jee-specs/ framework/modules/geronimo-security/ framework/modules/geronimo-securi

David,

This is causing build failures as the 0.8-SNAPSHOT of
com.envoisolutions.sxc is not published (and I don't think we have
repo defined for it anyway). Is that dependency really necessary
anyway?

Jarek

On Tue, Aug 12, 2008 at 3:27 AM,  <dj...@apache.org> wrote:
> Author: djencks
> Date: Tue Aug 12 00:27:25 2008
> New Revision: 685070
>
> URL: http://svn.apache.org/viewvc?rev=685070&view=rev
> Log:
> GERONIMO-3149 Some gbeans to support jaspi components and a little bit of reorganization
>
> Added:
>    geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/AuthConfigProviderGBean.java   (with props)
>    geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthConfigGBean.java   (with props)
>    geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthContextGBean.java   (with props)
>    geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthModuleGBean.java   (with props)
>    geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthConfigGBean.java   (with props)
>    geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthContextGBean.java   (with props)
>    geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthModuleGBean.java   (with props)
> Modified:
>    geronimo/server/trunk/buildsupport/car-maven-plugin/pom.xml
>    geronimo/server/trunk/framework/configs/j2ee-security/pom.xml
>    geronimo/server/trunk/framework/configs/j2ee-system/pom.xml
>    geronimo/server/trunk/framework/configs/jee-specs/pom.xml
>    geronimo/server/trunk/framework/modules/geronimo-security/pom.xml
>    geronimo/server/trunk/plugins/j2ee/geronimo-j2ee-schema/src/main/java/org/apache/geronimo/schema/SchemaConversionUtils.java
>    geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/java/org/apache/geronimo/security/deployment/GeronimoSecurityBuilderImpl.java
>    geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsd/geronimo-security-2.0.xsd
>    geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web/deployment/GenericToSpecificPlanConverter.java
>    geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/test/java/org/apache/geronimo/web/deployment/GenericToSpecificPlanConverterTest.java
>    geronimo/server/trunk/plugins/jetty/geronimo-jetty6-builder/src/test/java/org/apache/geronimo/jetty6/deployment/PlanParsingTest.java
>    geronimo/server/trunk/plugins/jetty/geronimo-jetty6/src/test/java/org/apache/geronimo/jetty6/SecurityTest.java
>    geronimo/server/trunk/plugins/jetty/pom.xml
>    geronimo/server/trunk/plugins/tomcat/geronimo-tomcat6-builder/src/test/java/org/apache/geronimo/tomcat/deployment/PlanParsingTest.java
>    geronimo/server/trunk/pom.xml
>
> Modified: geronimo/server/trunk/buildsupport/car-maven-plugin/pom.xml
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/buildsupport/car-maven-plugin/pom.xml?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/buildsupport/car-maven-plugin/pom.xml (original)
> +++ geronimo/server/trunk/buildsupport/car-maven-plugin/pom.xml Tue Aug 12 00:27:25 2008
> @@ -49,6 +49,10 @@
>             <artifactId>jaxb-impl</artifactId>
>         </dependency>
>         <dependency>
> +            <groupId>com.envoisolutions.sxc</groupId>
> +            <artifactId>sxc-jaxb</artifactId>
> +        </dependency>
> +        <dependency>
>             <groupId>org.apache.geronimo.specs</groupId>
>             <artifactId>geronimo-stax-api_1.0_spec</artifactId>
>         </dependency>
>
> Modified: geronimo/server/trunk/framework/configs/j2ee-security/pom.xml
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/j2ee-security/pom.xml?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/framework/configs/j2ee-security/pom.xml (original)
> +++ geronimo/server/trunk/framework/configs/j2ee-security/pom.xml Tue Aug 12 00:27:25 2008
> @@ -63,6 +63,24 @@
>             <artifactId>geronimo-jmx-remoting</artifactId>
>             <version>${version}</version>
>         </dependency>
> +
> +        <dependency>
> +            <groupId>org.apache.geronimo.components</groupId>
> +            <artifactId>geronimo-jaspi</artifactId>
> +            <version>1.0-SNAPSHOT</version>
> +        </dependency>
> +<!--
> +        <dependency>
> +            <groupId>org.soter.rbac</groupId>
> +            <artifactId>rbac-xml-model</artifactId>
> +            <version>1.0-SNAPSHOT</version>
> +        </dependency>
> +        <dependency>
> +            <groupId>org.soter.rbac</groupId>
> +            <artifactId>rbac-jacc</artifactId>
> +            <version>1.0-SNAPSHOT</version>
> +        </dependency>
> +-->
>     </dependencies>
>
>     <build>
> @@ -74,6 +92,7 @@
>                     <useMavenDependencies>
>                         <value>true</value>
>                         <includeVersion>true</includeVersion>
> +                        <!--<useTransitiveDependencies>true</useTransitiveDependencies>-->
>                     </useMavenDependencies>
>                     <category>Security</category>
>                     <instance>
>
> Modified: geronimo/server/trunk/framework/configs/j2ee-system/pom.xml
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/j2ee-system/pom.xml?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/framework/configs/j2ee-system/pom.xml (original)
> +++ geronimo/server/trunk/framework/configs/j2ee-system/pom.xml Tue Aug 12 00:27:25 2008
> @@ -105,6 +105,17 @@
>             <groupId>woodstox</groupId>
>             <artifactId>wstx-asl</artifactId>
>         </dependency>
> +
> +        <dependency>
> +            <groupId>com.envoisolutions.sxc</groupId>
> +            <artifactId>sxc-jaxb</artifactId>
> +        </dependency>
> +
> +        <dependency>
> +            <groupId>com.envoisolutions.sxc</groupId>
> +            <artifactId>sxc-runtime</artifactId>
> +        </dependency>
> +
>         <dependency>
>             <groupId>org.slf4j</groupId>
>             <artifactId>slf4j-log4j12</artifactId>
>
> Modified: geronimo/server/trunk/framework/configs/jee-specs/pom.xml
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/jee-specs/pom.xml?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/framework/configs/jee-specs/pom.xml (original)
> +++ geronimo/server/trunk/framework/configs/jee-specs/pom.xml Tue Aug 12 00:27:25 2008
> @@ -82,6 +82,11 @@
>             <groupId>org.apache.geronimo.specs</groupId>
>             <artifactId>geronimo-jacc_1.1_spec</artifactId>
>         </dependency>
> +
> +        <dependency>
> +            <groupId>org.apache.geronimo.specs</groupId>
> +            <artifactId>geronimo-jaspi_1.0_spec</artifactId>
> +        </dependency>
>
>         <!-- NOTA BENE: use the org.apache.geronimo.javamail/geronimo-javamail_1.4_mail uber jar
>        containing both the spec and the providers in order that users can actually use mail
> @@ -124,7 +129,7 @@
>
>         <dependency>
>             <groupId>org.apache.geronimo.specs</groupId>
> -            <artifactId>geronimo-servlet_2.5_spec</artifactId>
> +            <artifactId>geronimo-servlet_3.0_spec</artifactId>
>         </dependency>
>
>         <dependency>
> @@ -268,6 +273,11 @@
>                             <type>jar</type>
>                         </dependency>
>                         <dependency>
> +                            <groupId>org.apache.geronimo.specs</groupId>
> +                            <artifactId>geronimo-jaspi_1.0_spec</artifactId>
> +                            <type>jar</type>
> +                        </dependency>
> +                        <dependency>
>                             <groupId>org.apache.geronimo.javamail</groupId>
>                             <artifactId>geronimo-javamail_1.4_mail</artifactId>
>                             <type>jar</type>
> @@ -304,7 +314,7 @@
>                         </dependency>
>                         <dependency>
>                             <groupId>org.apache.geronimo.specs</groupId>
> -                            <artifactId>geronimo-servlet_2.5_spec</artifactId>
> +                            <artifactId>geronimo-servlet_3.0_spec</artifactId>
>                             <type>jar</type>
>                         </dependency>
>                         <dependency>
>
> Modified: geronimo/server/trunk/framework/modules/geronimo-security/pom.xml
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-security/pom.xml?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/framework/modules/geronimo-security/pom.xml (original)
> +++ geronimo/server/trunk/framework/modules/geronimo-security/pom.xml Tue Aug 12 00:27:25 2008
> @@ -69,6 +69,23 @@
>             <scope>test</scope>
>         </dependency>
>
> +        <dependency>
> +            <groupId>org.apache.geronimo.components</groupId>
> +            <artifactId>geronimo-jaspi</artifactId>
> +        </dependency>
> +
> +<!--
> +        <dependency>
> +            <groupId>org.soter.rbac</groupId>
> +            <artifactId>rbac-xml-model</artifactId>
> +            <version>1.0-SNAPSHOT</version>
> +        </dependency>
> +        <dependency>
> +            <groupId>org.soter.rbac</groupId>
> +            <artifactId>rbac-jacc</artifactId>
> +            <version>1.0-SNAPSHOT</version>
> +        </dependency>
> +-->
>     </dependencies>
>
>     <build>
>
> Added: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/AuthConfigProviderGBean.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/AuthConfigProviderGBean.java?rev=685070&view=auto
> ==============================================================================
> --- geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/AuthConfigProviderGBean.java (added)
> +++ geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/AuthConfigProviderGBean.java Tue Aug 12 00:27:25 2008
> @@ -0,0 +1,102 @@
> +/*
> + * Licensed to the Apache Software Foundation (ASF) under one
> + * or more contributor license agreements.  See the NOTICE file
> + * distributed with this work for additional information
> + * regarding copyright ownership.  The ASF licenses this file
> + * to you 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.jaspi;
> +
> +import java.io.StringReader;
> +import java.io.IOException;
> +
> +import javax.security.auth.message.config.AuthConfigFactory;
> +import javax.security.auth.message.config.AuthConfigProvider;
> +import javax.security.auth.message.config.AuthConfig;
> +import javax.security.auth.message.AuthException;
> +import javax.security.auth.callback.CallbackHandler;
> +import javax.xml.bind.JAXBException;
> +import javax.xml.parsers.ParserConfigurationException;
> +import javax.xml.stream.XMLStreamException;
> +
> +import org.apache.geronimo.gbean.annotation.GBean;
> +import org.apache.geronimo.gbean.annotation.ParamAttribute;
> +import org.apache.geronimo.gbean.annotation.ParamSpecial;
> +import org.apache.geronimo.gbean.annotation.SpecialAttributeType;
> +import org.apache.geronimo.gbean.GBeanLifecycle;
> +import org.apache.geronimo.components.jaspi.model.ConfigProviderType;
> +import org.apache.geronimo.components.jaspi.model.JaspiUtil;
> +import org.apache.geronimo.components.jaspi.model.JaspiXmlUtil;
> +import org.apache.geronimo.components.jaspi.model.ClientAuthConfigType;
> +import org.apache.geronimo.components.jaspi.model.ClientAuthContextType;
> +import org.apache.geronimo.components.jaspi.model.AuthModuleType;
> +import org.apache.geronimo.components.jaspi.model.ServerAuthConfigType;
> +import org.apache.geronimo.components.jaspi.model.ServerAuthContextType;
> +import org.apache.geronimo.components.jaspi.ClassLoaderLookup;
> +import org.apache.geronimo.components.jaspi.ConstantClassLoaderLookup;
> +import org.xml.sax.SAXException;
> +
> +/**
> + * Holds a bit of xml configuring an AuthConfigProvider, [Client|Server][AuthConfig|AuthContext|AuthModule]
> + * and registers/unregisters it when start/stopped.
> + *
> + * @version $Rev:$ $Date:$
> + */
> +
> +@GBean
> +public class AuthConfigProviderGBean implements GBeanLifecycle {
> +
> +    private final String registrationID;
> +
> +    public AuthConfigProviderGBean(
> +            @ParamAttribute(name = "config") String config,
> +            @ParamSpecial(type = SpecialAttributeType.classLoader) ClassLoader classLoader) throws AuthException, JAXBException, IOException, ParserConfigurationException, SAXException, XMLStreamException {
> +        ClassLoaderLookup classLoaderLookup = new ConstantClassLoaderLookup(classLoader);
> +
> +        String messageLayer = null;
> +        String appContext = null;
> +
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        ConfigProviderType configProviderType = JaspiXmlUtil.loadConfigProvider(new StringReader(config));
> +        AuthConfigProvider authConfigProvider = JaspiUtil.wraptAuthConfigProvider(configProviderType, classLoaderLookup);
> +        registrationID = authConfigFactory.registerConfigProvider(authConfigProvider, messageLayer, appContext, null);
> +    }
> +
> +
> +    /**
> +     * Starts the GBean.  This informs the GBean that it is about to transition to the running state.
> +     *
> +     * @throws Exception if the target failed to start; this will cause a transition to the failed state
> +     */
> +    public void doStart() throws Exception {
> +    }
> +
> +    /**
> +     * Stops the target.  This informs the GBean that it is about to transition to the stopped state.
> +     *
> +     * @throws Exception if the target failed to stop; this will cause a transition to the failed state
> +     */
> +    public void doStop() throws Exception {
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        authConfigFactory.removeRegistration(registrationID);
> +    }
> +
> +    /**
> +     * Fails the GBean.  This informs the GBean that it is about to transition to the failed state.
> +     */
> +    public void doFail() {
> +    }
> +}
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/AuthConfigProviderGBean.java
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/AuthConfigProviderGBean.java
> ------------------------------------------------------------------------------
>    svn:keywords = Date Revision
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/AuthConfigProviderGBean.java
> ------------------------------------------------------------------------------
>    svn:mime-type = text/plain
>
> Added: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthConfigGBean.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthConfigGBean.java?rev=685070&view=auto
> ==============================================================================
> --- geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthConfigGBean.java (added)
> +++ geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthConfigGBean.java Tue Aug 12 00:27:25 2008
> @@ -0,0 +1,100 @@
> +/*
> + * Licensed to the Apache Software Foundation (ASF) under one
> + * or more contributor license agreements.  See the NOTICE file
> + * distributed with this work for additional information
> + * regarding copyright ownership.  The ASF licenses this file
> + * to you 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.jaspi;
> +
> +import java.io.StringReader;
> +import java.io.IOException;
> +
> +import javax.security.auth.message.config.AuthConfigFactory;
> +import javax.security.auth.message.config.AuthConfigProvider;
> +import javax.security.auth.message.config.AuthConfig;
> +import javax.security.auth.message.AuthException;
> +import javax.security.auth.message.module.ServerAuthModule;
> +import javax.security.auth.callback.CallbackHandler;
> +import javax.xml.bind.JAXBException;
> +import javax.xml.parsers.ParserConfigurationException;
> +import javax.xml.stream.XMLStreamException;
> +
> +import org.apache.geronimo.gbean.annotation.GBean;
> +import org.apache.geronimo.gbean.annotation.ParamAttribute;
> +import org.apache.geronimo.gbean.annotation.ParamSpecial;
> +import org.apache.geronimo.gbean.annotation.SpecialAttributeType;
> +import org.apache.geronimo.gbean.GBeanLifecycle;
> +import org.apache.geronimo.components.jaspi.model.ConfigProviderType;
> +import org.apache.geronimo.components.jaspi.model.JaspiUtil;
> +import org.apache.geronimo.components.jaspi.model.JaspiXmlUtil;
> +import org.apache.geronimo.components.jaspi.model.ClientAuthConfigType;
> +import org.apache.geronimo.components.jaspi.model.ClientAuthContextType;
> +import org.apache.geronimo.components.jaspi.model.AuthModuleType;
> +import org.apache.geronimo.components.jaspi.model.ServerAuthConfigType;
> +import org.apache.geronimo.components.jaspi.model.ServerAuthContextType;
> +import org.apache.geronimo.components.jaspi.ClassLoaderLookup;
> +import org.apache.geronimo.components.jaspi.ConstantClassLoaderLookup;
> +import org.xml.sax.SAXException;
> +
> +/**
> + * Holds a bit of xml configuring an AuthConfigProvider, [Client|Server][AuthConfig|AuthContext|AuthModule]
> + * and registers/unregisters it when start/stopped.
> + *
> + * @version $Rev:$ $Date:$
> + */
> +
> +@GBean
> +public class ClientAuthConfigGBean implements GBeanLifecycle {
> +
> +    private final String registrationID;
> +
> +    public ClientAuthConfigGBean(
> +            @ParamAttribute(name = "config") String config,
> +            @ParamSpecial(type = SpecialAttributeType.classLoader) ClassLoader classLoader) throws AuthException, JAXBException, IOException, ParserConfigurationException, SAXException, XMLStreamException {
> +        ClassLoaderLookup classLoaderLookup = new ConstantClassLoaderLookup(classLoader);
> +
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        ClientAuthContextType clientAuthContextType = JaspiXmlUtil.loadClientAuthContext(new StringReader(config));
> +        AuthConfigProvider authConfigProvider = JaspiUtil.wrapClientAuthContext(clientAuthContextType, true, classLoaderLookup);
> +        registrationID = authConfigFactory.registerConfigProvider(authConfigProvider, clientAuthContextType.getMessageLayer(), clientAuthContextType.getAppContext(), null);
> +    }
> +
> +
> +    /**
> +     * Starts the GBean.  This informs the GBean that it is about to transition to the running state.
> +     *
> +     * @throws Exception if the target failed to start; this will cause a transition to the failed state
> +     */
> +    public void doStart() throws Exception {
> +    }
> +
> +    /**
> +     * Stops the target.  This informs the GBean that it is about to transition to the stopped state.
> +     *
> +     * @throws Exception if the target failed to stop; this will cause a transition to the failed state
> +     */
> +    public void doStop() throws Exception {
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        authConfigFactory.removeRegistration(registrationID);
> +    }
> +
> +    /**
> +     * Fails the GBean.  This informs the GBean that it is about to transition to the failed state.
> +     */
> +    public void doFail() {
> +    }
> +}
> \ No newline at end of file
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthConfigGBean.java
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthConfigGBean.java
> ------------------------------------------------------------------------------
>    svn:keywords = Date Revision
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthConfigGBean.java
> ------------------------------------------------------------------------------
>    svn:mime-type = text/plain
>
> Added: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthContextGBean.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthContextGBean.java?rev=685070&view=auto
> ==============================================================================
> --- geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthContextGBean.java (added)
> +++ geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthContextGBean.java Tue Aug 12 00:27:25 2008
> @@ -0,0 +1,93 @@
> +/*
> + * Licensed to the Apache Software Foundation (ASF) under one
> + * or more contributor license agreements.  See the NOTICE file
> + * distributed with this work for additional information
> + * regarding copyright ownership.  The ASF licenses this file
> + * to you 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.jaspi;
> +
> +import java.io.IOException;
> +import java.io.StringReader;
> +
> +import javax.security.auth.callback.CallbackHandler;
> +import javax.security.auth.message.AuthException;
> +import javax.security.auth.message.config.AuthConfigFactory;
> +import javax.security.auth.message.config.AuthConfigProvider;
> +import javax.xml.bind.JAXBException;
> +import javax.xml.parsers.ParserConfigurationException;
> +import javax.xml.stream.XMLStreamException;
> +
> +import org.apache.geronimo.components.jaspi.ClassLoaderLookup;
> +import org.apache.geronimo.components.jaspi.ConstantClassLoaderLookup;
> +import org.apache.geronimo.components.jaspi.model.JaspiUtil;
> +import org.apache.geronimo.components.jaspi.model.JaspiXmlUtil;
> +import org.apache.geronimo.components.jaspi.model.ClientAuthContextType;
> +import org.apache.geronimo.gbean.GBeanLifecycle;
> +import org.apache.geronimo.gbean.annotation.GBean;
> +import org.apache.geronimo.gbean.annotation.ParamAttribute;
> +import org.apache.geronimo.gbean.annotation.ParamSpecial;
> +import org.apache.geronimo.gbean.annotation.SpecialAttributeType;
> +import org.xml.sax.SAXException;
> +
> +/**
> + * Holds a bit of xml configuring an AuthConfigProvider, [Client|Server][AuthConfig|AuthContext|AuthModule]
> + * and registers/unregisters it when start/stopped.
> + *
> + * @version $Rev:$ $Date:$
> + */
> +
> +@GBean
> +public class ClientAuthContextGBean implements GBeanLifecycle {
> +
> +    private final String registrationID;
> +
> +    public ClientAuthContextGBean(
> +            @ParamAttribute(name = "config") String config,
> +            @ParamSpecial(type = SpecialAttributeType.classLoader) ClassLoader classLoader) throws AuthException, JAXBException, IOException, ParserConfigurationException, SAXException, XMLStreamException {
> +        ClassLoaderLookup classLoaderLookup = new ConstantClassLoaderLookup(classLoader);
> +
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        ClientAuthContextType clientAuthContextType = JaspiXmlUtil.loadClientAuthContext(new StringReader(config));
> +        AuthConfigProvider authConfigProvider = JaspiUtil.wrapClientAuthContext(clientAuthContextType, true, classLoaderLookup);
> +        registrationID = authConfigFactory.registerConfigProvider(authConfigProvider, clientAuthContextType.getMessageLayer(), clientAuthContextType.getAppContext(), null);
> +    }
> +
> +
> +    /**
> +     * Starts the GBean.  This informs the GBean that it is about to transition to the running state.
> +     *
> +     * @throws Exception if the target failed to start; this will cause a transition to the failed state
> +     */
> +    public void doStart() throws Exception {
> +    }
> +
> +    /**
> +     * Stops the target.  This informs the GBean that it is about to transition to the stopped state.
> +     *
> +     * @throws Exception if the target failed to stop; this will cause a transition to the failed state
> +     */
> +    public void doStop() throws Exception {
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        authConfigFactory.removeRegistration(registrationID);
> +    }
> +
> +    /**
> +     * Fails the GBean.  This informs the GBean that it is about to transition to the failed state.
> +     */
> +    public void doFail() {
> +    }
> +}
> \ No newline at end of file
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthContextGBean.java
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthContextGBean.java
> ------------------------------------------------------------------------------
>    svn:keywords = Date Revision
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthContextGBean.java
> ------------------------------------------------------------------------------
>    svn:mime-type = text/plain
>
> Added: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthModuleGBean.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthModuleGBean.java?rev=685070&view=auto
> ==============================================================================
> --- geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthModuleGBean.java (added)
> +++ geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthModuleGBean.java Tue Aug 12 00:27:25 2008
> @@ -0,0 +1,97 @@
> +/*
> + * Licensed to the Apache Software Foundation (ASF) under one
> + * or more contributor license agreements.  See the NOTICE file
> + * distributed with this work for additional information
> + * regarding copyright ownership.  The ASF licenses this file
> + * to you 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.jaspi;
> +
> +import java.io.IOException;
> +import java.io.StringReader;
> +
> +import javax.security.auth.callback.CallbackHandler;
> +import javax.security.auth.message.AuthException;
> +import javax.security.auth.message.config.AuthConfigFactory;
> +import javax.security.auth.message.config.AuthConfigProvider;
> +import javax.security.auth.message.module.ClientAuthModule;
> +import javax.xml.bind.JAXBException;
> +import javax.xml.parsers.ParserConfigurationException;
> +import javax.xml.stream.XMLStreamException;
> +
> +import org.apache.geronimo.components.jaspi.ClassLoaderLookup;
> +import org.apache.geronimo.components.jaspi.ConstantClassLoaderLookup;
> +import org.apache.geronimo.components.jaspi.model.AuthModuleType;
> +import org.apache.geronimo.components.jaspi.model.JaspiUtil;
> +import org.apache.geronimo.components.jaspi.model.JaspiXmlUtil;
> +import org.apache.geronimo.gbean.GBeanLifecycle;
> +import org.apache.geronimo.gbean.annotation.GBean;
> +import org.apache.geronimo.gbean.annotation.ParamAttribute;
> +import org.apache.geronimo.gbean.annotation.ParamSpecial;
> +import org.apache.geronimo.gbean.annotation.SpecialAttributeType;
> +import org.xml.sax.SAXException;
> +
> +/**
> + * Holds a bit of xml configuring an AuthConfigProvider, [Client|Client][AuthConfig|AuthContext|AuthModule]
> + * and registers/unregisters it when start/stopped.
> + *
> + * @version $Rev:$ $Date:$
> + */
> +
> +@GBean
> +public class ClientAuthModuleGBean implements GBeanLifecycle {
> +
> +    private final String registrationID;
> +
> +    public ClientAuthModuleGBean(
> +            @ParamAttribute(name = "messageLayer") String messageLayer,
> +            @ParamAttribute(name = "appContext") String appContext,
> +            @ParamAttribute(name = "authenticationID") String authenticationID,
> +            @ParamAttribute(name = "config") String config,
> +            @ParamSpecial(type = SpecialAttributeType.classLoader) ClassLoader classLoader) throws AuthException, JAXBException, IOException, ParserConfigurationException, SAXException, XMLStreamException {
> +        ClassLoaderLookup classLoaderLookup = new ConstantClassLoaderLookup(classLoader);
> +
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        AuthModuleType<ClientAuthModule> clientAuthModuleType = JaspiXmlUtil.loadClientAuthModule(new StringReader(config));
> +        AuthConfigProvider authConfigProvider = JaspiUtil.wrapClientAuthModule(messageLayer, appContext, authenticationID, clientAuthModuleType, true, classLoaderLookup);
> +        registrationID = authConfigFactory.registerConfigProvider(authConfigProvider, messageLayer, appContext, null);
> +    }
> +
> +
> +    /**
> +     * Starts the GBean.  This informs the GBean that it is about to transition to the running state.
> +     *
> +     * @throws Exception if the target failed to start; this will cause a transition to the failed state
> +     */
> +    public void doStart() throws Exception {
> +    }
> +
> +    /**
> +     * Stops the target.  This informs the GBean that it is about to transition to the stopped state.
> +     *
> +     * @throws Exception if the target failed to stop; this will cause a transition to the failed state
> +     */
> +    public void doStop() throws Exception {
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        authConfigFactory.removeRegistration(registrationID);
> +    }
> +
> +    /**
> +     * Fails the GBean.  This informs the GBean that it is about to transition to the failed state.
> +     */
> +    public void doFail() {
> +    }
> +}
> \ No newline at end of file
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthModuleGBean.java
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthModuleGBean.java
> ------------------------------------------------------------------------------
>    svn:keywords = Date Revision
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ClientAuthModuleGBean.java
> ------------------------------------------------------------------------------
>    svn:mime-type = text/plain
>
> Added: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthConfigGBean.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthConfigGBean.java?rev=685070&view=auto
> ==============================================================================
> --- geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthConfigGBean.java (added)
> +++ geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthConfigGBean.java Tue Aug 12 00:27:25 2008
> @@ -0,0 +1,100 @@
> +/*
> + * Licensed to the Apache Software Foundation (ASF) under one
> + * or more contributor license agreements.  See the NOTICE file
> + * distributed with this work for additional information
> + * regarding copyright ownership.  The ASF licenses this file
> + * to you 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.jaspi;
> +
> +import java.io.StringReader;
> +import java.io.IOException;
> +
> +import javax.security.auth.message.config.AuthConfigFactory;
> +import javax.security.auth.message.config.AuthConfigProvider;
> +import javax.security.auth.message.config.AuthConfig;
> +import javax.security.auth.message.AuthException;
> +import javax.security.auth.message.module.ServerAuthModule;
> +import javax.security.auth.callback.CallbackHandler;
> +import javax.xml.bind.JAXBException;
> +import javax.xml.parsers.ParserConfigurationException;
> +import javax.xml.stream.XMLStreamException;
> +
> +import org.apache.geronimo.gbean.annotation.GBean;
> +import org.apache.geronimo.gbean.annotation.ParamAttribute;
> +import org.apache.geronimo.gbean.annotation.ParamSpecial;
> +import org.apache.geronimo.gbean.annotation.SpecialAttributeType;
> +import org.apache.geronimo.gbean.GBeanLifecycle;
> +import org.apache.geronimo.components.jaspi.model.ConfigProviderType;
> +import org.apache.geronimo.components.jaspi.model.JaspiUtil;
> +import org.apache.geronimo.components.jaspi.model.JaspiXmlUtil;
> +import org.apache.geronimo.components.jaspi.model.ClientAuthConfigType;
> +import org.apache.geronimo.components.jaspi.model.ClientAuthContextType;
> +import org.apache.geronimo.components.jaspi.model.AuthModuleType;
> +import org.apache.geronimo.components.jaspi.model.ServerAuthConfigType;
> +import org.apache.geronimo.components.jaspi.model.ServerAuthContextType;
> +import org.apache.geronimo.components.jaspi.ClassLoaderLookup;
> +import org.apache.geronimo.components.jaspi.ConstantClassLoaderLookup;
> +import org.xml.sax.SAXException;
> +
> +/**
> + * Holds a bit of xml configuring an AuthConfigProvider, [Client|Server][AuthConfig|AuthContext|AuthModule]
> + * and registers/unregisters it when start/stopped.
> + *
> + * @version $Rev:$ $Date:$
> + */
> +
> +@GBean
> +public class ServerAuthConfigGBean implements GBeanLifecycle {
> +
> +    private final String registrationID;
> +
> +    public ServerAuthConfigGBean(
> +            @ParamAttribute(name = "config") String config,
> +            @ParamSpecial(type = SpecialAttributeType.classLoader) ClassLoader classLoader) throws AuthException, JAXBException, IOException, ParserConfigurationException, SAXException, XMLStreamException {
> +        ClassLoaderLookup classLoaderLookup = new ConstantClassLoaderLookup(classLoader);
> +
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        ServerAuthContextType serverAuthContextType = JaspiXmlUtil.loadServerAuthContext(new StringReader(config));
> +        AuthConfigProvider authConfigProvider = JaspiUtil.wrapServerAuthContext(serverAuthContextType, true, classLoaderLookup);
> +        registrationID = authConfigFactory.registerConfigProvider(authConfigProvider, serverAuthContextType.getMessageLayer(), serverAuthContextType.getAppContext(), null);
> +    }
> +
> +
> +    /**
> +     * Starts the GBean.  This informs the GBean that it is about to transition to the running state.
> +     *
> +     * @throws Exception if the target failed to start; this will cause a transition to the failed state
> +     */
> +    public void doStart() throws Exception {
> +    }
> +
> +    /**
> +     * Stops the target.  This informs the GBean that it is about to transition to the stopped state.
> +     *
> +     * @throws Exception if the target failed to stop; this will cause a transition to the failed state
> +     */
> +    public void doStop() throws Exception {
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        authConfigFactory.removeRegistration(registrationID);
> +    }
> +
> +    /**
> +     * Fails the GBean.  This informs the GBean that it is about to transition to the failed state.
> +     */
> +    public void doFail() {
> +    }
> +}
> \ No newline at end of file
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthConfigGBean.java
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthConfigGBean.java
> ------------------------------------------------------------------------------
>    svn:keywords = Date Revision
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthConfigGBean.java
> ------------------------------------------------------------------------------
>    svn:mime-type = text/plain
>
> Added: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthContextGBean.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthContextGBean.java?rev=685070&view=auto
> ==============================================================================
> --- geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthContextGBean.java (added)
> +++ geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthContextGBean.java Tue Aug 12 00:27:25 2008
> @@ -0,0 +1,93 @@
> +/*
> + * Licensed to the Apache Software Foundation (ASF) under one
> + * or more contributor license agreements.  See the NOTICE file
> + * distributed with this work for additional information
> + * regarding copyright ownership.  The ASF licenses this file
> + * to you 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.jaspi;
> +
> +import java.io.IOException;
> +import java.io.StringReader;
> +
> +import javax.security.auth.callback.CallbackHandler;
> +import javax.security.auth.message.AuthException;
> +import javax.security.auth.message.config.AuthConfigFactory;
> +import javax.security.auth.message.config.AuthConfigProvider;
> +import javax.xml.bind.JAXBException;
> +import javax.xml.parsers.ParserConfigurationException;
> +import javax.xml.stream.XMLStreamException;
> +
> +import org.apache.geronimo.components.jaspi.ClassLoaderLookup;
> +import org.apache.geronimo.components.jaspi.ConstantClassLoaderLookup;
> +import org.apache.geronimo.components.jaspi.model.JaspiUtil;
> +import org.apache.geronimo.components.jaspi.model.JaspiXmlUtil;
> +import org.apache.geronimo.components.jaspi.model.ServerAuthContextType;
> +import org.apache.geronimo.gbean.GBeanLifecycle;
> +import org.apache.geronimo.gbean.annotation.GBean;
> +import org.apache.geronimo.gbean.annotation.ParamAttribute;
> +import org.apache.geronimo.gbean.annotation.ParamSpecial;
> +import org.apache.geronimo.gbean.annotation.SpecialAttributeType;
> +import org.xml.sax.SAXException;
> +
> +/**
> + * Holds a bit of xml configuring an AuthConfigProvider, [Client|Server][AuthConfig|AuthContext|AuthModule]
> + * and registers/unregisters it when start/stopped.
> + *
> + * @version $Rev:$ $Date:$
> + */
> +
> +@GBean
> +public class ServerAuthContextGBean implements GBeanLifecycle {
> +
> +    private final String registrationID;
> +
> +    public ServerAuthContextGBean(
> +            @ParamAttribute(name = "config") String config,
> +            @ParamSpecial(type = SpecialAttributeType.classLoader) ClassLoader classLoader) throws AuthException, JAXBException, IOException, ParserConfigurationException, SAXException, XMLStreamException {
> +        ClassLoaderLookup classLoaderLookup = new ConstantClassLoaderLookup(classLoader);
> +
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        ServerAuthContextType serverAuthContextType = JaspiXmlUtil.loadServerAuthContext(new StringReader(config));
> +        AuthConfigProvider authConfigProvider = JaspiUtil.wrapServerAuthContext(serverAuthContextType, true, classLoaderLookup);
> +        registrationID = authConfigFactory.registerConfigProvider(authConfigProvider, serverAuthContextType.getMessageLayer(), serverAuthContextType.getAppContext(), null);
> +    }
> +
> +
> +    /**
> +     * Starts the GBean.  This informs the GBean that it is about to transition to the running state.
> +     *
> +     * @throws Exception if the target failed to start; this will cause a transition to the failed state
> +     */
> +    public void doStart() throws Exception {
> +    }
> +
> +    /**
> +     * Stops the target.  This informs the GBean that it is about to transition to the stopped state.
> +     *
> +     * @throws Exception if the target failed to stop; this will cause a transition to the failed state
> +     */
> +    public void doStop() throws Exception {
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        authConfigFactory.removeRegistration(registrationID);
> +    }
> +
> +    /**
> +     * Fails the GBean.  This informs the GBean that it is about to transition to the failed state.
> +     */
> +    public void doFail() {
> +    }
> +}
> \ No newline at end of file
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthContextGBean.java
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthContextGBean.java
> ------------------------------------------------------------------------------
>    svn:keywords = Date Revision
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthContextGBean.java
> ------------------------------------------------------------------------------
>    svn:mime-type = text/plain
>
> Added: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthModuleGBean.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthModuleGBean.java?rev=685070&view=auto
> ==============================================================================
> --- geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthModuleGBean.java (added)
> +++ geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthModuleGBean.java Tue Aug 12 00:27:25 2008
> @@ -0,0 +1,97 @@
> +/*
> + * Licensed to the Apache Software Foundation (ASF) under one
> + * or more contributor license agreements.  See the NOTICE file
> + * distributed with this work for additional information
> + * regarding copyright ownership.  The ASF licenses this file
> + * to you 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.jaspi;
> +
> +import java.io.IOException;
> +import java.io.StringReader;
> +
> +import javax.security.auth.callback.CallbackHandler;
> +import javax.security.auth.message.AuthException;
> +import javax.security.auth.message.config.AuthConfigFactory;
> +import javax.security.auth.message.config.AuthConfigProvider;
> +import javax.security.auth.message.module.ServerAuthModule;
> +import javax.xml.bind.JAXBException;
> +import javax.xml.parsers.ParserConfigurationException;
> +import javax.xml.stream.XMLStreamException;
> +
> +import org.apache.geronimo.components.jaspi.ClassLoaderLookup;
> +import org.apache.geronimo.components.jaspi.ConstantClassLoaderLookup;
> +import org.apache.geronimo.components.jaspi.model.AuthModuleType;
> +import org.apache.geronimo.components.jaspi.model.JaspiUtil;
> +import org.apache.geronimo.components.jaspi.model.JaspiXmlUtil;
> +import org.apache.geronimo.gbean.GBeanLifecycle;
> +import org.apache.geronimo.gbean.annotation.GBean;
> +import org.apache.geronimo.gbean.annotation.ParamAttribute;
> +import org.apache.geronimo.gbean.annotation.ParamSpecial;
> +import org.apache.geronimo.gbean.annotation.SpecialAttributeType;
> +import org.xml.sax.SAXException;
> +
> +/**
> + * Holds a bit of xml configuring an AuthConfigProvider, [Client|Server][AuthConfig|AuthContext|AuthModule]
> + * and registers/unregisters it when start/stopped.
> + *
> + * @version $Rev:$ $Date:$
> + */
> +
> +@GBean
> +public class ServerAuthModuleGBean implements GBeanLifecycle {
> +
> +    private final String registrationID;
> +
> +    public ServerAuthModuleGBean(
> +            @ParamAttribute(name = "messageLayer") String messageLayer,
> +            @ParamAttribute(name = "appContext") String appContext,
> +            @ParamAttribute(name = "authenticationID") String authenticationID,
> +            @ParamAttribute(name = "config") String config,
> +            @ParamSpecial(type = SpecialAttributeType.classLoader) ClassLoader classLoader) throws AuthException, JAXBException, IOException, ParserConfigurationException, SAXException, XMLStreamException {
> +        ClassLoaderLookup classLoaderLookup = new ConstantClassLoaderLookup(classLoader);
> +
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        AuthModuleType<ServerAuthModule> serverAuthModuleType = JaspiXmlUtil.loadServerAuthModule(new StringReader(config));
> +        AuthConfigProvider authConfigProvider = JaspiUtil.wrapServerAuthModule(messageLayer, appContext, authenticationID, serverAuthModuleType, true, classLoaderLookup);
> +        registrationID = authConfigFactory.registerConfigProvider(authConfigProvider, messageLayer, appContext, null);
> +    }
> +
> +
> +    /**
> +     * Starts the GBean.  This informs the GBean that it is about to transition to the running state.
> +     *
> +     * @throws Exception if the target failed to start; this will cause a transition to the failed state
> +     */
> +    public void doStart() throws Exception {
> +    }
> +
> +    /**
> +     * Stops the target.  This informs the GBean that it is about to transition to the stopped state.
> +     *
> +     * @throws Exception if the target failed to stop; this will cause a transition to the failed state
> +     */
> +    public void doStop() throws Exception {
> +        AuthConfigFactory authConfigFactory = AuthConfigFactory.getFactory();
> +        authConfigFactory.removeRegistration(registrationID);
> +    }
> +
> +    /**
> +     * Fails the GBean.  This informs the GBean that it is about to transition to the failed state.
> +     */
> +    public void doFail() {
> +    }
> +}
> \ No newline at end of file
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthModuleGBean.java
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthModuleGBean.java
> ------------------------------------------------------------------------------
>    svn:keywords = Date Revision
>
> Propchange: geronimo/server/trunk/framework/modules/geronimo-security/src/main/java/org/apache/geronimo/security/jaspi/ServerAuthModuleGBean.java
> ------------------------------------------------------------------------------
>    svn:mime-type = text/plain
>
> Modified: geronimo/server/trunk/plugins/j2ee/geronimo-j2ee-schema/src/main/java/org/apache/geronimo/schema/SchemaConversionUtils.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-j2ee-schema/src/main/java/org/apache/geronimo/schema/SchemaConversionUtils.java?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/plugins/j2ee/geronimo-j2ee-schema/src/main/java/org/apache/geronimo/schema/SchemaConversionUtils.java (original)
> +++ geronimo/server/trunk/plugins/j2ee/geronimo-j2ee-schema/src/main/java/org/apache/geronimo/schema/SchemaConversionUtils.java Tue Aug 12 00:27:25 2008
> @@ -37,7 +37,6 @@
>     public static final String JAVAEE_NAMESPACE = "http://java.sun.com/xml/ns/javaee";
>
>     static final String GERONIMO_NAMING_NAMESPACE = "http://geronimo.apache.org/xml/ns/naming-1.2";
> -    private static final String GERONIMO_SECURITY_NAMESPACE = "http://geronimo.apache.org/xml/ns/security-2.0";
>     private static final String GERONIMO_SERVICE_NAMESPACE = "http://geronimo.apache.org/xml/ns/deployment-1.2";
>     private static final String JPA_PERSISTENCE_NAMESPACE = "http://java.sun.com/xml/ns/persistence";
>
> @@ -57,9 +56,6 @@
>         GERONIMO_SCHEMA_CONVERSIONS.put("resource-adapter", new NamespaceElementConverter(GERONIMO_NAMING_NAMESPACE));
>         GERONIMO_SCHEMA_CONVERSIONS.put("web-container", new NamespaceElementConverter(GERONIMO_NAMING_NAMESPACE));
>
> -        GERONIMO_SCHEMA_CONVERSIONS.put("security", new SecurityElementConverter());
> -        GERONIMO_SCHEMA_CONVERSIONS.put("default-subject", new NamespaceElementConverter(GERONIMO_SECURITY_NAMESPACE));
> -
>         GERONIMO_SCHEMA_CONVERSIONS.put("gbean", new GBeanElementConverter());
>         GERONIMO_SCHEMA_CONVERSIONS.put("environment", new NamespaceElementConverter(GERONIMO_SERVICE_NAMESPACE));
>         GERONIMO_SCHEMA_CONVERSIONS.put("client-environment", new NamespaceElementConverter(GERONIMO_SERVICE_NAMESPACE));
> @@ -70,10 +66,14 @@
>     private SchemaConversionUtils() {
>     }
>
> -    public static void registerNamespaceConversions(Map conversions) {
> +    public static void registerNamespaceConversions(Map<String, ? extends ElementConverter> conversions) {
>         GERONIMO_SCHEMA_CONVERSIONS.putAll(conversions);
>     }
>
> +    public static void unregisterNamespaceConversions(Map<String, ? extends ElementConverter> conversions) {
> +        GERONIMO_SCHEMA_CONVERSIONS.keySet().removeAll(conversions.keySet());
> +    }
> +
>     public static void convertToGeronimoSubSchemas(XmlCursor cursor) {
>         cursor.toStartDoc();
>         XmlCursor end = cursor.newCursor();
>
> Modified: geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/java/org/apache/geronimo/security/deployment/GeronimoSecurityBuilderImpl.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/java/org/apache/geronimo/security/deployment/GeronimoSecurityBuilderImpl.java?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/java/org/apache/geronimo/security/deployment/GeronimoSecurityBuilderImpl.java (original)
> +++ geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/java/org/apache/geronimo/security/deployment/GeronimoSecurityBuilderImpl.java Tue Aug 12 00:27:25 2008
> @@ -50,6 +50,7 @@
>  import org.apache.geronimo.security.deploy.Security;
>  import org.apache.geronimo.security.deploy.SubjectInfo;
>  import org.apache.geronimo.security.jacc.ApplicationPolicyConfigurationManager;
> +import org.apache.geronimo.security.jacc.ComponentPermissions;
>  import org.apache.geronimo.security.jacc.mappingprovider.ApplicationPrincipalRoleConfigurationManager;
>  import org.apache.geronimo.security.util.ConfigurationUtil;
>  import org.apache.geronimo.security.credentialstore.CredentialStore;
> @@ -61,6 +62,11 @@
>  import org.apache.geronimo.xbeans.geronimo.security.GerSecurityDocument;
>  import org.apache.geronimo.xbeans.geronimo.security.GerSecurityType;
>  import org.apache.geronimo.xbeans.geronimo.security.GerSubjectInfoType;
> +import org.apache.geronimo.schema.ElementConverter;
> +import org.apache.geronimo.schema.NamespaceElementConverter;
> +import org.apache.geronimo.schema.GBeanElementConverter;
> +import org.apache.geronimo.schema.SecurityElementConverter;
> +import org.apache.geronimo.schema.SchemaConversionUtils;
>  import org.apache.xmlbeans.QNameSet;
>  import org.apache.xmlbeans.XmlException;
>  import org.apache.xmlbeans.XmlObject;
> @@ -71,6 +77,7 @@
>  public class GeronimoSecurityBuilderImpl implements NamespaceDrivenBuilder, GBeanLifecycle {
>     private static final QName SECURITY_QNAME = GerSecurityDocument.type.getDocumentElementName();
>     private static final QNameSet SECURITY_QNAME_SET = QNameSet.singleton(SECURITY_QNAME);
> +    public static final String GERONIMO_SECURITY_NAMESPACE = "http://geronimo.apache.org/xml/ns/security-2.0";
>     private static final Map<String, String> NAMESPACE_UPDATES = new HashMap<String, String>();
>     static {
>         NAMESPACE_UPDATES.put("http://geronimo.apache.org/xml/ns/loginconfig", "http://geronimo.apache.org/xml/ns/loginconfig-2.0");
> @@ -81,6 +88,13 @@
>         NAMESPACE_UPDATES.put("http://geronimo.apache.org/xml/ns/security-1.2", "http://geronimo.apache.org/xml/ns/security-2.0");
>     }
>
> +    private static final Map<String, ElementConverter> GERONIMO_SCHEMA_CONVERSIONS = new HashMap<String, ElementConverter>();
> +
> +    static {
> +        GERONIMO_SCHEMA_CONVERSIONS.put("security", new SecurityElementConverter());
> +        GERONIMO_SCHEMA_CONVERSIONS.put("default-subject", new NamespaceElementConverter(GERONIMO_SECURITY_NAMESPACE));
> +    }
> +
>     private final AbstractNameQuery credentialStoreName;
>
>     public GeronimoSecurityBuilderImpl(AbstractNameQuery credentialStoreName) {
> @@ -89,10 +103,12 @@
>
>     public void doStart() {
>         XmlBeansUtil.registerNamespaceUpdates(NAMESPACE_UPDATES);
> +        SchemaConversionUtils.registerNamespaceConversions(GERONIMO_SCHEMA_CONVERSIONS);
>     }
>
>     public void doStop() {
>         XmlBeansUtil.unregisterNamespaceUpdates(NAMESPACE_UPDATES);
> +        SchemaConversionUtils.unregisterNamespaceConversions(GERONIMO_SCHEMA_CONVERSIONS);
>     }
>
>     public void doFail() {
> @@ -296,7 +312,7 @@
>         return roleMapperData;
>     }
>
> -    protected GBeanData configureApplicationPolicyManager(Naming naming, AbstractName moduleName, Map contextIDToPermissionsMap, SecurityConfiguration securityConfiguration, AbstractNameQuery credentialStoreName) {
> +    protected GBeanData configureApplicationPolicyManager(Naming naming, AbstractName moduleName, Map<String, ComponentPermissions> contextIDToPermissionsMap, SecurityConfiguration securityConfiguration, AbstractNameQuery credentialStoreName) {
>         AbstractName jaccBeanName = naming.createChildName(moduleName, NameFactory.JACC_MANAGER, NameFactory.JACC_MANAGER);
>         GBeanData jaccBeanData = new GBeanData(jaccBeanName, ApplicationPolicyConfigurationManager.GBEAN_INFO);
>         jaccBeanData.setAttribute("contextIdToPermissionsMap", contextIDToPermissionsMap);
>
> Modified: geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsd/geronimo-security-2.0.xsd
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsd/geronimo-security-2.0.xsd?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsd/geronimo-security-2.0.xsd (original)
> +++ geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsd/geronimo-security-2.0.xsd Tue Aug 12 00:27:25 2008
> @@ -96,13 +96,13 @@
>         </xsd:simpleContent>
>     </xsd:complexType>
>
> -    <xsd:complexType name="named-username-password-credentialType">
> -        <xsd:sequence>
> -            <xsd:element name="name" type="xsd:string"/>
> -            <xsd:element name="username" type="xsd:string"/>
> -            <xsd:element name="password" type="xsd:string"/>
> -        </xsd:sequence>
> -    </xsd:complexType>
> +    <!--<xsd:complexType name="named-username-password-credentialType">-->
> +        <!--<xsd:sequence>-->
> +            <!--<xsd:element name="name" type="xsd:string"/>-->
> +            <!--<xsd:element name="username" type="xsd:string"/>-->
> +            <!--<xsd:element name="password" type="xsd:string"/>-->
> +        <!--</xsd:sequence>-->
> +    <!--</xsd:complexType>-->
>
>     <xsd:complexType name="role-mappingsType">
>         <xsd:sequence>
>
> Modified: geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web/deployment/GenericToSpecificPlanConverter.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web/deployment/GenericToSpecificPlanConverter.java?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web/deployment/GenericToSpecificPlanConverter.java (original)
> +++ geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web/deployment/GenericToSpecificPlanConverter.java Tue Aug 12 00:27:25 2008
> @@ -20,6 +20,8 @@
>  import java.util.HashMap;
>  import java.util.List;
>  import java.util.Map;
> +import java.util.Set;
> +import java.util.HashSet;
>
>  import javax.xml.namespace.QName;
>
> @@ -47,11 +49,13 @@
>     private final String configNamespace;
>     private final String namespace;
>     private final String element;
> +    private final Set<String> excludedNamespaces = new HashSet<String>();
>
>     public GenericToSpecificPlanConverter(String configNamespace, String namespace, String element) {
>         this.configNamespace = configNamespace;
>         this.namespace = namespace;
>         this.element = element;
> +        excludedNamespaces.add("http://geronimo.apache.org/xml/ns/geronimo-jaspi");
>     }
>
>     public XmlObject convertToSpecificPlan(XmlObject plan) throws DeploymentException {
> @@ -93,7 +97,8 @@
>                     while (cursor.hasNextToken()) {
>                         if (cursor.isStart()) {
>                             if (!SchemaConversionUtils.convertSingleElementToGeronimoSubSchemas(cursor, end)
> -                            && !this.namespace.equals(cursor.getName().getNamespaceURI())) {
> +                            && !this.namespace.equals(cursor.getName().getNamespaceURI())
> +                                    && !excludedNamespaces.contains(cursor.getName().getNamespaceURI())) {
>                                 cursor.setName(new QName(this.namespace, cursor.getName().getLocalPart()));
>                             }
>                         }
> @@ -106,6 +111,7 @@
>                     cursor.pop();
>
>                     moveToBottom(cursor, map.get("security-realm-name"));
> +                    moveToBottom(cursor, map.get("authentication"));
>                     moveToBottom(cursor, map.get("security"));
>                     moveToBottom(cursor, map.get("gbean"));
>                     moveToBottom(cursor, map.get("persistence"));
>
> Modified: geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/test/java/org/apache/geronimo/web/deployment/GenericToSpecificPlanConverterTest.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/test/java/org/apache/geronimo/web/deployment/GenericToSpecificPlanConverterTest.java?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/test/java/org/apache/geronimo/web/deployment/GenericToSpecificPlanConverterTest.java (original)
> +++ geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/test/java/org/apache/geronimo/web/deployment/GenericToSpecificPlanConverterTest.java Tue Aug 12 00:27:25 2008
> @@ -17,15 +17,22 @@
>  package org.apache.geronimo.web.deployment;
>
>  import java.net.URL;
> -import java.util.List;
>  import java.util.ArrayList;
> +import java.util.HashMap;
> +import java.util.List;
> +import java.util.Map;
>
>  import javax.xml.namespace.QName;
>
>  import junit.framework.TestCase;
> -import org.apache.xmlbeans.XmlObject;
> -import org.apache.xmlbeans.XmlCursor;
>  import org.apache.geronimo.deployment.xmlbeans.XmlBeansUtil;
> +import org.apache.geronimo.schema.ElementConverter;
> +import org.apache.geronimo.schema.NamespaceElementConverter;
> +import org.apache.geronimo.schema.SchemaConversionUtils;
> +import org.apache.geronimo.schema.SecurityElementConverter;
> +import org.apache.geronimo.security.deployment.GeronimoSecurityBuilderImpl;
> +import org.apache.xmlbeans.XmlCursor;
> +import org.apache.xmlbeans.XmlObject;
>
>  /**
>  * @version $Rev$ $Date$
> @@ -33,15 +40,25 @@
>  public class GenericToSpecificPlanConverterTest extends TestCase {
>     private ClassLoader classLoader = this.getClass().getClassLoader();
>
> +    protected void setUp() {
> +        Map<String, ElementConverter> converterMap = new HashMap<String, ElementConverter>();
> +        converterMap.put("security", new SecurityElementConverter());
> +        converterMap.put("default-subject", new NamespaceElementConverter(GeronimoSecurityBuilderImpl.GERONIMO_SECURITY_NAMESPACE));
> +        SchemaConversionUtils.registerNamespaceConversions(converterMap);
> +    }
> +
>     public void testConvertPlan1() throws Exception {
>         testConvertPlan("plans/tomcat-pre.xml", "plans/tomcat-post.xml");
>     }
> +
>     public void testConvertPlan2() throws Exception {
>         testConvertPlan("plans/tomcat-pre2.xml", "plans/tomcat-post.xml");
>     }
> +
>     public void testConvertPlan3() throws Exception {
>         testConvertPlan("plans/tomcat-pre3.xml", "plans/tomcat-post.xml");
>     }
> +
>     public void testConvertPlanMessageDestination1() throws Exception {
>         testConvertPlan("plans/web-md-pre.xml", "plans/web-md-post.xml");
>     }
> @@ -50,11 +67,11 @@
>         URL srcXml = classLoader.getResource(prePlanName);
>         URL expectedOutputXml = classLoader.getResource(postPlanName);
>         XmlObject rawPlan = XmlBeansUtil.parse(srcXml, getClass().getClassLoader());
> -
> +
>         XmlObject expected = XmlObject.Factory.parse(expectedOutputXml);
>         XmlObject webPlan = new GenericToSpecificPlanConverter("http://geronimo.apache.org/xml/ns/web/tomcat/config-1.0",
>                 "http://geronimo.apache.org/xml/ns/j2ee/web/tomcat-2.0.1", "tomcat").convertToSpecificPlan(rawPlan);
> -
> +
>         List problems = new ArrayList();
>         boolean ok = compareXmlObjects(webPlan, expected, problems);
>         assertTrue("Differences: " + problems, ok);
>
> Modified: geronimo/server/trunk/plugins/jetty/geronimo-jetty6-builder/src/test/java/org/apache/geronimo/jetty6/deployment/PlanParsingTest.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/jetty/geronimo-jetty6-builder/src/test/java/org/apache/geronimo/jetty6/deployment/PlanParsingTest.java?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/plugins/jetty/geronimo-jetty6-builder/src/test/java/org/apache/geronimo/jetty6/deployment/PlanParsingTest.java (original)
> +++ geronimo/server/trunk/plugins/jetty/geronimo-jetty6-builder/src/test/java/org/apache/geronimo/jetty6/deployment/PlanParsingTest.java Tue Aug 12 00:27:25 2008
> @@ -51,8 +51,8 @@
>  import org.apache.geronimo.xbeans.javaee.WebAppDocument;
>  import org.apache.geronimo.xbeans.javaee.WebAppType;
>  import org.apache.xmlbeans.XmlCursor;
> -import org.apache.xmlbeans.XmlObject;
>  import org.apache.xmlbeans.XmlException;
> +import org.apache.xmlbeans.XmlObject;
>
>  /**
>  */
> @@ -73,6 +73,8 @@
>
>     protected void setUp() throws Exception {
>         super.setUp();
> +        GeronimoSecurityBuilderImpl securityBuilder = new GeronimoSecurityBuilderImpl(null);
> +        securityBuilder.doStart();
>         builder = new JettyModuleBuilder(defaultEnvironment,
>                 new Integer(1800),
>                 null,
>
> Modified: geronimo/server/trunk/plugins/jetty/geronimo-jetty6/src/test/java/org/apache/geronimo/jetty6/SecurityTest.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/jetty/geronimo-jetty6/src/test/java/org/apache/geronimo/jetty6/SecurityTest.java?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/plugins/jetty/geronimo-jetty6/src/test/java/org/apache/geronimo/jetty6/SecurityTest.java (original)
> +++ geronimo/server/trunk/plugins/jetty/geronimo-jetty6/src/test/java/org/apache/geronimo/jetty6/SecurityTest.java Tue Aug 12 00:27:25 2008
> @@ -24,6 +24,7 @@
>  import java.net.URL;
>  import java.security.PermissionCollection;
>  import java.security.Permissions;
> +import java.security.Principal;
>  import java.util.HashMap;
>  import java.util.HashSet;
>  import java.util.Iterator;
> @@ -68,8 +69,8 @@
>
>         securityConfig.getRoleMappings().put(role.getRoleName(), role);
>
> -        Map roleDesignates = new HashMap();
> -        Map principalRoleMap = new HashMap();
> +        Map<String, SubjectInfo> roleDesignates = new HashMap<String, SubjectInfo>();
> +        Map<String, Set<Principal>> principalRoleMap = new HashMap<String, Set<Principal>>();
>         buildPrincipalRoleMap(securityConfig, roleDesignates, principalRoleMap);
>
>         PermissionCollection uncheckedPermissions = new Permissions();
> @@ -79,13 +80,13 @@
>         uncheckedPermissions.add(new WebResourcePermission("/auth/logon.html", ""));
>         uncheckedPermissions.add(new WebUserDataPermission("/auth/logon.html", ""));
>
> -        Map rolePermissions = new HashMap();
> +        Map<String, PermissionCollection> rolePermissions = new HashMap<String, PermissionCollection>();
>         PermissionCollection permissions = new Permissions();
>         permissions.add(new WebResourcePermission("/protected/*", ""));
>         rolePermissions.put("content-administrator", permissions);
>         rolePermissions.put("auto-administrator", permissions);
>
> -        Set securityRoles = new HashSet();
> +        Set<String> securityRoles = new HashSet<String>();
>         securityRoles.add("content-administrator");
>         securityRoles.add("auto-administrator");
>
>
> Modified: geronimo/server/trunk/plugins/jetty/pom.xml
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/jetty/pom.xml?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/plugins/jetty/pom.xml (original)
> +++ geronimo/server/trunk/plugins/jetty/pom.xml Tue Aug 12 00:27:25 2008
> @@ -36,6 +36,38 @@
>         Jetty plugin
>     </description>
>
> +    <dependencyManagement>
> +        <dependencies>
> +
> +            <dependency>
> +                <groupId>org.mortbay.jetty</groupId>
> +                <artifactId>jetty</artifactId>
> +                <version>6.1.7</version>
> +            </dependency>
> +
> +            <dependency>
> +                <groupId>org.mortbay.jetty</groupId>
> +                <artifactId>jetty-ajp</artifactId>
> +                <version>6.1.7</version>
> +            </dependency>
> +
> +            <dependency>
> +                <groupId>org.mortbay.jetty</groupId>
> +                <artifactId>jetty-sslengine</artifactId>
> +                <version>6.1.7</version>
> +            </dependency>
> +
> +            <dependency>
> +                <groupId>org.mortbay.jetty</groupId>
> +                <artifactId>jetty-util</artifactId>
> +                <version>6.1.7</version>
> +            </dependency>
> +
> +       </dependencies>
> +    </dependencyManagement>
> +
> +
> +
>     <modules>
>         <module>geronimo-jetty6</module>
>         <module>geronimo-jetty6-builder</module>
>
> Modified: geronimo/server/trunk/plugins/tomcat/geronimo-tomcat6-builder/src/test/java/org/apache/geronimo/tomcat/deployment/PlanParsingTest.java
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/tomcat/geronimo-tomcat6-builder/src/test/java/org/apache/geronimo/tomcat/deployment/PlanParsingTest.java?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/plugins/tomcat/geronimo-tomcat6-builder/src/test/java/org/apache/geronimo/tomcat/deployment/PlanParsingTest.java (original)
> +++ geronimo/server/trunk/plugins/tomcat/geronimo-tomcat6-builder/src/test/java/org/apache/geronimo/tomcat/deployment/PlanParsingTest.java Tue Aug 12 00:27:25 2008
> @@ -67,6 +67,8 @@
>             new MockResourceEnvironmentSetter(),
>             null);
>         builder.doStart();
> +        GeronimoSecurityBuilderImpl securityBuilder = new GeronimoSecurityBuilderImpl(null);
> +        securityBuilder.doStart();
>     }
>
>     protected void tearDown() throws Exception {
>
> Modified: geronimo/server/trunk/pom.xml
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/pom.xml?rev=685070&r1=685069&r2=685070&view=diff
> ==============================================================================
> --- geronimo/server/trunk/pom.xml (original)
> +++ geronimo/server/trunk/pom.xml Tue Aug 12 00:27:25 2008
> @@ -97,6 +97,7 @@
>         <axis2Deployer>org.apache.geronimo.configs/axis2-deployer/${version}/car</axis2Deployer>
>         <tomcatDeployer>org.apache.geronimo.configs/tomcat6-deployer/${version}/car</tomcatDeployer>
>         <jetty6Deployer>org.apache.geronimo.configs/jetty6-deployer/${version}/car</jetty6Deployer>
> +        <jetty7Deployer>org.apache.geronimo.configs/jetty7-deployer/${version}/car</jetty7Deployer>
>         <jasperDeployer>org.apache.geronimo.configs/jasper-deployer/${version}/car</jasperDeployer>
>         <jpaDeployer>org.apache.geronimo.configs/persistence-jpa10-deployer/${version}/car</jpaDeployer>
>
> @@ -166,6 +167,11 @@
>                 <artifactId>geronimo-jacc_1.1_spec</artifactId>
>                 <version>1.0.1</version>
>             </dependency>
> +            <dependency>
> +                <groupId>org.apache.geronimo.specs</groupId>
> +                <artifactId>geronimo-jaspi_1.1_spec</artifactId>
> +                <version>1.0-SNAPSHOT</version>
> +            </dependency>
>
>             <dependency>
>                 <groupId>org.apache.geronimo.specs</groupId>
> @@ -230,6 +236,11 @@
>                 <artifactId>geronimo-servlet_2.5_spec</artifactId>
>                 <version>1.2</version>
>             </dependency>
> +            <dependency>
> +                <groupId>org.apache.geronimo.specs</groupId>
> +                <artifactId>geronimo-servlet_3.0_spec</artifactId>
> +                <version>1.0-EA-SNAPSHOT</version>
> +            </dependency>
>
>             <dependency>
>                 <groupId>org.apache.geronimo.specs</groupId>
> @@ -308,6 +319,12 @@
>             </dependency>
>
>             <dependency>
> +                <groupId>org.apache.geronimo.components</groupId>
> +                <artifactId>geronimo-jaspi</artifactId>
> +                <version>1.0-SNAPSHOT</version>
> +            </dependency>
> +
> +            <dependency>
>                 <groupId>org.apache.openjpa</groupId>
>                 <artifactId>openjpa</artifactId>
>                 <version>${openjpaVersion}</version>
> @@ -850,6 +867,10 @@
>                         <groupId>org.apache.openejb</groupId>
>                         <artifactId>javaee-api</artifactId>
>                     </exclusion>
> +                    <exclusion>
> +                        <groupId>log4j</groupId>
> +                        <artifactId>log4j</artifactId>
> +                    </exclusion>
>                 </exclusions>
>             </dependency>
>
> @@ -862,6 +883,10 @@
>                         <groupId>org.apache.openejb</groupId>
>                         <artifactId>javaee-api</artifactId>
>                     </exclusion>
> +                    <exclusion>
> +                        <groupId>log4j</groupId>
> +                        <artifactId>log4j</artifactId>
> +                    </exclusion>
>                 </exclusions>
>             </dependency>
>
> @@ -874,6 +899,10 @@
>                         <groupId>org.apache.openejb</groupId>
>                         <artifactId>javaee-api</artifactId>
>                     </exclusion>
> +                    <exclusion>
> +                        <groupId>log4j</groupId>
> +                        <artifactId>log4j</artifactId>
> +                    </exclusion>
>                 </exclusions>
>             </dependency>
>
> @@ -886,6 +915,10 @@
>                         <groupId>org.apache.openejb</groupId>
>                         <artifactId>javaee-api</artifactId>
>                     </exclusion>
> +                    <exclusion>
> +                        <groupId>log4j</groupId>
> +                        <artifactId>log4j</artifactId>
> +                    </exclusion>
>                 </exclusions>
>             </dependency>
>
> @@ -898,6 +931,10 @@
>                         <groupId>org.apache.openejb</groupId>
>                         <artifactId>javaee-api</artifactId>
>                     </exclusion>
> +                    <exclusion>
> +                        <groupId>log4j</groupId>
> +                        <artifactId>log4j</artifactId>
> +                    </exclusion>
>                 </exclusions>
>             </dependency>
>
> @@ -910,6 +947,10 @@
>                         <groupId>org.apache.openejb</groupId>
>                         <artifactId>javaee-api</artifactId>
>                     </exclusion>
> +                    <exclusion>
> +                        <groupId>log4j</groupId>
> +                        <artifactId>log4j</artifactId>
> +                    </exclusion>
>                 </exclusions>
>             </dependency>
>
> @@ -922,6 +963,10 @@
>                         <groupId>org.apache.openejb</groupId>
>                         <artifactId>javaee-api</artifactId>
>                     </exclusion>
> +                    <exclusion>
> +                        <groupId>log4j</groupId>
> +                        <artifactId>log4j</artifactId>
> +                    </exclusion>
>                 </exclusions>
>             </dependency>
>
> @@ -1107,31 +1152,6 @@
>                 <version>${wadiVersion}</version>
>             </dependency>
>
> -            <!-- Jetty web container -->
> -            <dependency>
> -                <groupId>org.mortbay.jetty</groupId>
> -                <artifactId>jetty</artifactId>
> -                <version>6.1.7</version>
> -            </dependency>
> -
> -            <dependency>
> -                <groupId>org.mortbay.jetty</groupId>
> -                <artifactId>jetty-ajp</artifactId>
> -                <version>6.1.7</version>
> -            </dependency>
> -
> -            <dependency>
> -                <groupId>org.mortbay.jetty</groupId>
> -                <artifactId>jetty-sslengine</artifactId>
> -                <version>6.1.7</version>
> -            </dependency>
> -
> -            <dependency>
> -                <groupId>org.mortbay.jetty</groupId>
> -                <artifactId>jetty-util</artifactId>
> -                <version>6.1.7</version>
> -            </dependency>
> -
>             <dependency>
>                 <groupId>org.apache.geronimo.specs</groupId>
>                 <artifactId>geronimo-stax-api_1.0_spec</artifactId>
> @@ -1196,6 +1216,29 @@
>                 <version>2.1.7</version>
>             </dependency>
>
> +            <dependency>
> +                <groupId>com.envoisolutions.sxc</groupId>
> +                <artifactId>sxc-jaxb</artifactId>
> +                <version>0.8-SNAPSHOT</version>
> +                <exclusions>
> +                    <exclusion>
> +                        <groupId>stax</groupId>
> +                        <artifactId>stax-api</artifactId>
> +                    </exclusion>
> +                </exclusions>
> +            </dependency>
> +            <dependency>
> +                <groupId>com.envoisolutions.sxc</groupId>
> +                <artifactId>sxc-runtime</artifactId>
> +                <version>0.8-SNAPSHOT</version>
> +                <!--<exclusions>-->
> +                    <!--<exclusion>-->
> +                        <!--<groupId>stax</groupId>-->
> +                        <!--<artifactId>stax-api</artifactId>-->
> +                    <!--</exclusion>-->
> +                <!--</exclusions>-->
> +            </dependency>
> +
>             <!--JSF 1.2 JARs from Apache MyFaces -->
>             <dependency>
>                 <groupId>org.apache.myfaces.core</groupId>
>
>
>