maguro 2004/11/13 14:11:26
Modified: modules/openejb-builder/src/java/org/openejb/deployment
ContainerSecurityBuilder.java
Log:
Refined exception criteria
Revision Changes Path
1.3 +3 -2
openejb/modules/openejb-builder/src/java/org/openejb/deployment/ContainerSecurityBuilder.java
Index: ContainerSecurityBuilder.java
===================================================================
RCS file:
/scm/openejb/openejb/modules/openejb-builder/src/java/org/openejb/deployment/ContainerSecurityBuilder.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- ContainerSecurityBuilder.java 12 Nov 2004 21:29:21 -0000 1.2
+++ ContainerSecurityBuilder.java 13 Nov 2004 19:11:26 -0000 1.3
@@ -338,7 +338,8 @@
SecurityIdentityType securityIdentity)
throws DeploymentException {
- String runAsName = ((securityIdentity != null &&
securityIdentity.getRunAs() != null) ?
securityIdentity.getRunAs().getRoleName().getStringValue() : "");
+ boolean needsRunAs = (securityIdentity != null &&
securityIdentity.getRunAs() != null);
+ String runAsName = (needsRunAs ?
securityIdentity.getRunAs().getRoleName().getStringValue() : "");
Iterator rollMappings =
security.getRoleMappings().values().iterator();
while (rollMappings.hasNext()) {
Role role = (Role) rollMappings.next();
@@ -378,7 +379,7 @@
}
}
}
- if (builder.getRunAs() == null) throw new DeploymentException("Role
designate not found for role: " + runAsName);
+ if (needsRunAs && builder.getRunAs() == null) throw new
DeploymentException("Role designate not found for role: " + runAsName);
}
/**