[jboss-cvs] JBossAS SVN: r58698 - trunk/tomcat/src/main/org/jboss/web/tomcat/tc6/deployers
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Nov 27 19:49:11 EST 2006
Author: remy.maucherat at jboss.com
Date: 2006-11-27 19:49:09 -0500 (Mon, 27 Nov 2006)
New Revision: 58698
Modified:
trunk/tomcat/src/main/org/jboss/web/tomcat/tc6/deployers/JBossContextConfig.java
Log:
- Finish coding according to what WebMetaData currently does.
Modified: trunk/tomcat/src/main/org/jboss/web/tomcat/tc6/deployers/JBossContextConfig.java
===================================================================
--- trunk/tomcat/src/main/org/jboss/web/tomcat/tc6/deployers/JBossContextConfig.java 2006-11-27 23:55:52 UTC (rev 58697)
+++ trunk/tomcat/src/main/org/jboss/web/tomcat/tc6/deployers/JBossContextConfig.java 2006-11-28 00:49:09 UTC (rev 58698)
@@ -32,6 +32,7 @@
import org.jboss.metadata.SecurityRoleRefMetaData;
import org.jboss.metadata.WebMetaData;
import org.jboss.metadata.WebSecurityMetaData;
+import org.jboss.metadata.WebSecurityMetaData.WebResourceCollection;
import org.jboss.metadata.web.ErrorPage;
import org.jboss.metadata.web.Filter;
import org.jboss.metadata.web.FilterMapping;
@@ -122,23 +123,52 @@
// Login configuration
LoginConfig loginConfig = metaData.getLoginConfig();
- org.apache.catalina.deploy.LoginConfig loginConfig2 =
- new org.apache.catalina.deploy.LoginConfig();
- loginConfig2.setAuthMethod(loginConfig.getAuthMethod());
- loginConfig2.setRealmName(loginConfig.getRealmName());
- if (loginConfig.getFormLoginConfig() != null) {
- loginConfig2.setLoginPage(loginConfig.getFormLoginConfig().getLoginPage());
- loginConfig2.setErrorPage(loginConfig.getFormLoginConfig().getErrorPage());
+ if (loginConfig != null) {
+ org.apache.catalina.deploy.LoginConfig loginConfig2 =
+ new org.apache.catalina.deploy.LoginConfig();
+ loginConfig2.setAuthMethod(loginConfig.getAuthMethod());
+ loginConfig2.setRealmName(loginConfig.getRealmName());
+ if (loginConfig.getFormLoginConfig() != null) {
+ loginConfig2.setLoginPage(loginConfig.getFormLoginConfig().getLoginPage());
+ loginConfig2.setErrorPage(loginConfig.getFormLoginConfig().getErrorPage());
+ }
+ context.setLoginConfig(loginConfig2);
}
// FIXME: mime mappings parsing
// Security constraints
Iterator<WebSecurityMetaData> iterator6 = metaData.getSecurityContraints();
- // FIXME: compatibility with everything should be checked
while (iterator6.hasNext()) {
WebSecurityMetaData value = iterator6.next();
-
+ org.apache.catalina.deploy.SecurityConstraint constraint =
+ new org.apache.catalina.deploy.SecurityConstraint();
+ constraint.setUserConstraint(value.getTransportGuarantee());
+ constraint.setAuthConstraint(value.getAuthConstraint() != null);
+ if (value.getAuthConstraint() != null) {
+ // FIXME: there's a duplicate roles field on the WebSecurityMetaData itself
+ Iterator<String> roles = value.getAuthConstraint().getRoleNames().iterator();
+ while (roles.hasNext()) {
+ constraint.addAuthRole(roles.next());
+ }
+ }
+ Iterator<WebResourceCollection> collections = value.getWebResources().values().iterator();
+ while (collections.hasNext()) {
+ WebResourceCollection collection = collections.next();
+ org.apache.catalina.deploy.SecurityCollection collection2 =
+ new org.apache.catalina.deploy.SecurityCollection();
+ collection2.setName(collection.getName());
+ String[] methods = collection.getHttpMethods();
+ for (int i = 0; i < methods.length; i++) {
+ collection2.addMethod(methods[i]);
+ }
+ String[] urlPatterns = collection.getUrlPatterns();
+ for (int i = 0; i < urlPatterns.length; i++) {
+ collection2.addPattern(urlPatterns[i]);
+ }
+ constraint.addCollection(collection2);
+ }
+ context.addConstraint(constraint);
}
// Security roles
More information about the jboss-cvs-commits
mailing list