Index: security-jboss-sx/jbosssx/src/main/java/org/jboss/security/config/parser/AuthenticationConfigParser.java
===================================================================
--- security-jboss-sx/jbosssx/src/main/java/org/jboss/security/config/parser/AuthenticationConfigParser.java	(revision 486)
+++ security-jboss-sx/jbosssx/src/main/java/org/jboss/security/config/parser/AuthenticationConfigParser.java	(working copy)
@@ -21,6 +21,7 @@
  */
 package org.jboss.security.config.parser;
 
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Iterator;
@@ -69,27 +70,29 @@
 public class AuthenticationConfigParser implements XMLStreamConstants
 {
 
-   public static Map<String, String> loginModulesMap = new HashMap<String, String>();
+   public static final Map<String, String> loginModulesMap;
 
    static
    {
-      loginModulesMap.put("Client", ClientLoginModule.class.getName());
-      loginModulesMap.put("Certificate", BaseCertLoginModule.class.getName());
-      loginModulesMap.put("CertificateRoles", CertRolesLoginModule.class.getName());
-      loginModulesMap.put("DatabaseCertificate", DatabaseCertLoginModule.class.getName());
-      loginModulesMap.put("Database", DatabaseServerLoginModule.class.getName());
-      loginModulesMap.put("Identity", IdentityLoginModule.class.getName());
-      loginModulesMap.put("Ldap", LdapLoginModule.class.getName());
-      loginModulesMap.put("LdapExtended", LdapExtLoginModule.class.getName());
-      loginModulesMap.put("RoleMapping", RoleMappingLoginModule.class.getName());
-      loginModulesMap.put("RunAs", RunAsLoginModule.class.getName());
-      loginModulesMap.put("Simple", SimpleServerLoginModule.class.getName());
-      loginModulesMap.put("UsersRoles", UsersRolesLoginModule.class.getName());
-      loginModulesMap.put("CallerIdentity", CallerIdentityLoginModule.class.getName());
-      loginModulesMap.put("ConfiguredIdentity", ConfiguredIdentityLoginModule.class.getName());
-      loginModulesMap.put("JaasSecurityDomainIdentity", JaasSecurityDomainIdentityLoginModule.class.getName());
-      loginModulesMap.put("PBEIdentity", PBEIdentityLoginModule.class.getName());
-      loginModulesMap.put("SecureIdentity", SecureIdentityLoginModule.class.getName());
+      final Map<String, String> loginModules = new HashMap<String, String>();
+      loginModules.put("Client", ClientLoginModule.class.getName());
+      loginModules.put("Certificate", BaseCertLoginModule.class.getName());
+      loginModules.put("CertificateRoles", CertRolesLoginModule.class.getName());
+      loginModules.put("DatabaseCertificate", DatabaseCertLoginModule.class.getName());
+      loginModules.put("Database", DatabaseServerLoginModule.class.getName());
+      loginModules.put("Identity", IdentityLoginModule.class.getName());
+      loginModules.put("Ldap", LdapLoginModule.class.getName());
+      loginModules.put("LdapExtended", LdapExtLoginModule.class.getName());
+      loginModules.put("RoleMapping", RoleMappingLoginModule.class.getName());
+      loginModules.put("RunAs", RunAsLoginModule.class.getName());
+      loginModules.put("Simple", SimpleServerLoginModule.class.getName());
+      loginModules.put("UsersRoles", UsersRolesLoginModule.class.getName());
+      loginModules.put("CallerIdentity", CallerIdentityLoginModule.class.getName());
+      loginModules.put("ConfiguredIdentity", ConfiguredIdentityLoginModule.class.getName());
+      loginModules.put("JaasSecurityDomainIdentity", JaasSecurityDomainIdentityLoginModule.class.getName());
+      loginModules.put("PBEIdentity", PBEIdentityLoginModule.class.getName());
+      loginModules.put("SecureIdentity", SecureIdentityLoginModule.class.getName());
+      loginModulesMap = Collections.unmodifiableMap(loginModules);
    }
 
    /**
@@ -235,4 +238,4 @@
 
       return new AppConfigurationEntry(codeName, controlFlag, options);
    }
-}
\ No newline at end of file
+}
Index: security-jboss-sx/jbosssx/src/main/java/org/jboss/security/config/parser/ModuleOptionParser.java
===================================================================
--- security-jboss-sx/jbosssx/src/main/java/org/jboss/security/config/parser/ModuleOptionParser.java	(revision 486)
+++ security-jboss-sx/jbosssx/src/main/java/org/jboss/security/config/parser/ModuleOptionParser.java	(working copy)
@@ -47,9 +47,9 @@
  */
 public class ModuleOptionParser implements XMLStreamConstants
 {
-   private static transient Map<String, ParserNamespaceSupport> parsers = new HashMap<String,ParserNamespaceSupport>();
+   private static final Map<String, ParserNamespaceSupport> parsers = Collections.synchronizedMap(new HashMap<String,ParserNamespaceSupport>());
    
-   public ModuleOptionParser()
+   static
    { 
       parsers.put("urn:jboss:user-roles", new UsersConfigParser());
       parsers.put("urn:jboss:java-properties", new JavaPropertiesConfigParser()); 
@@ -206,4 +206,4 @@
       }
       return options;
    }
-}
\ No newline at end of file
+}
Index: security-jboss-sx/jbosssx/src/main/java/org/jboss/security/config/SecurityConfiguration.java
===================================================================
--- security-jboss-sx/jbosssx/src/main/java/org/jboss/security/config/SecurityConfiguration.java	(revision 486)
+++ security-jboss-sx/jbosssx/src/main/java/org/jboss/security/config/SecurityConfiguration.java	(working copy)
@@ -9,6 +9,8 @@
 import java.security.Key;
 import java.security.spec.AlgorithmParameterSpec;
 import java.util.HashMap;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
 import org.jboss.security.PicketBoxMessages;
 
@@ -26,7 +28,7 @@
    /**
     * Map of Application Policies keyed in by name
     */
-   private static HashMap<String,ApplicationPolicy> appPolicies = new HashMap<String,ApplicationPolicy>();
+   private static final Map<String,ApplicationPolicy> appPolicies = new ConcurrentHashMap<String,ApplicationPolicy>();
    private static String cipherAlgorithm;
    private static int iterationCount;
    private static String salt;
@@ -223,4 +225,4 @@
   {
      deepCopySubjectMode = dcsm;
   }
-}
\ No newline at end of file
+}
Index: security-jboss-sx/jbosssx/src/main/java/org/jboss/security/util/xml/JBossEntityResolver.java
===================================================================
--- security-jboss-sx/jbosssx/src/main/java/org/jboss/security/util/xml/JBossEntityResolver.java	(revision 486)
+++ security-jboss-sx/jbosssx/src/main/java/org/jboss/security/util/xml/JBossEntityResolver.java	(working copy)
@@ -56,7 +56,7 @@
 public class JBossEntityResolver implements EntityResolver
 {
    /** A class wide Map<String, String> of publicId/systemId to dtd/xsd file */
-   private static Map entities = new ConcurrentHashMap ();
+   private static final Map entities = new ConcurrentHashMap ();
    /** A class flag indicating whether an attempt to resolve a systemID as a
     non-file URL should produce a warning rather than a trace level log msg.
     */
Index: security-jboss-sx/jbosssx/src/main/java/org/jboss/security/authorization/modules/AbstractAuthorizationModule.java
===================================================================
--- security-jboss-sx/jbosssx/src/main/java/org/jboss/security/authorization/modules/AbstractAuthorizationModule.java	(revision 486)
+++ security-jboss-sx/jbosssx/src/main/java/org/jboss/security/authorization/modules/AbstractAuthorizationModule.java	(working copy)
@@ -24,6 +24,7 @@
 import java.util.HashMap;
 import java.util.Map;
 import java.util.StringTokenizer;
+import java.util.concurrent.ConcurrentHashMap;
 
 import javax.security.auth.Subject;
 import javax.security.auth.callback.CallbackHandler;
@@ -57,7 +58,7 @@
    protected Map<ResourceType,String> delegateMap = new HashMap<ResourceType,String>();
    
    /** A map that is available to reduce the loadClass synchronization */
-   protected static Map<String, Class<?> > clazzMap = new HashMap<String, Class<?> >();
+   protected static Map<String, Class<?> > clazzMap = new ConcurrentHashMap<String, Class<?>>();
    
    /**
     * @see AuthorizationModule#authorize(Resource)
@@ -196,4 +197,4 @@
          this.delegateMap.put(ResourceType.valueOf(key),value);
       }   
    }    
-}
\ No newline at end of file
+}
