[jboss-cvs] JBossAS SVN: r66120 - in trunk/server/src/main/org/jboss: ejb and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Oct 15 01:45:33 EDT 2007
Author: scott.stark at jboss.org
Date: 2007-10-15 01:45:33 -0400 (Mon, 15 Oct 2007)
New Revision: 66120
Modified:
trunk/server/src/main/org/jboss/deployment/security/JaccPolicyUtil.java
trunk/server/src/main/org/jboss/ejb/EJBPermissionMapping.java
trunk/server/src/main/org/jboss/ejb/EjbModule.java
trunk/server/src/main/org/jboss/ejb/deployers/EjbDeployer.java
Log:
Handle null values
Modified: trunk/server/src/main/org/jboss/deployment/security/JaccPolicyUtil.java
===================================================================
--- trunk/server/src/main/org/jboss/deployment/security/JaccPolicyUtil.java 2007-10-15 05:15:01 UTC (rev 66119)
+++ trunk/server/src/main/org/jboss/deployment/security/JaccPolicyUtil.java 2007-10-15 05:45:33 UTC (rev 66120)
@@ -131,7 +131,7 @@
else
if(metadata instanceof JBossMetaData)
{
- JBossEnterpriseBeansMetaData beans = ((JBossMetaData)metadata).getEnterpriseBeans();
+ JBossEnterpriseBeansMetaData beans = ((JBossMetaData)metadata).getMergedEnterpriseBeans();
for(JBossEnterpriseBeanMetaData bmd : beans)
{
EJBPermissionMapping.createPermissions(bmd, policyConfiguration);
Modified: trunk/server/src/main/org/jboss/ejb/EJBPermissionMapping.java
===================================================================
--- trunk/server/src/main/org/jboss/ejb/EJBPermissionMapping.java 2007-10-15 05:15:01 UTC (rev 66119)
+++ trunk/server/src/main/org/jboss/ejb/EJBPermissionMapping.java 2007-10-15 05:45:33 UTC (rev 66120)
@@ -39,6 +39,7 @@
import org.jboss.metadata.ejb.spec.MethodInterfaceType;
import org.jboss.metadata.ejb.spec.MethodPermissionMetaData;
import org.jboss.metadata.ejb.spec.MethodPermissionsMetaData;
+import org.jboss.metadata.ejb.spec.MethodsMetaData;
import org.jboss.metadata.ejb.spec.SessionBeanMetaData;
import org.jboss.metadata.javaee.spec.SecurityRoleRefsMetaData;
@@ -60,9 +61,12 @@
EnterpriseBeanMetaData beanSpecMD = bean.getOverridenMetaData();
// Process the method-permission MethodMetaData
MethodPermissionsMetaData perms = beanSpecMD.getMethodPermissions();
+ if(perms != null)
for(MethodPermissionMetaData perm : perms)
{
- for(org.jboss.metadata.ejb.spec.MethodMetaData mmd : perm.getMethods())
+ MethodsMetaData methods = perm.getMethods();
+ if(methods != null)
+ for(org.jboss.metadata.ejb.spec.MethodMetaData mmd : methods)
{
String[] params = null;
params = mmd.getMethodParams().toArray(params);
@@ -92,22 +96,28 @@
// Process the exclude-list MethodMetaData
ExcludeListMetaData excluded = beanSpecMD.getExcludeList();
- for(org.jboss.metadata.ejb.spec.MethodMetaData mmd : excluded.getMethods())
+ if(excluded != null)
{
- String[] params = null;
- params = mmd.getMethodParams().toArray(params);
- String methodName = mmd.getMethodName();
- if( methodName != null && methodName.equals("*") )
- methodName = null;
- MethodInterfaceType miType = mmd.getMethodIntf();
- String iface = miType != null ? miType.name() : null;
- EJBMethodPermission p = new EJBMethodPermission(mmd.getEjbName(),
- methodName, iface, params);
- pc.addToExcludedPolicy(p);
+ MethodsMetaData methods = excluded.getMethods();
+ if(methods != null)
+ for(org.jboss.metadata.ejb.spec.MethodMetaData mmd : methods)
+ {
+ String[] params = null;
+ params = mmd.getMethodParams().toArray(params);
+ String methodName = mmd.getMethodName();
+ if( methodName != null && methodName.equals("*") )
+ methodName = null;
+ MethodInterfaceType miType = mmd.getMethodIntf();
+ String iface = miType != null ? miType.name() : null;
+ EJBMethodPermission p = new EJBMethodPermission(mmd.getEjbName(),
+ methodName, iface, params);
+ pc.addToExcludedPolicy(p);
+ }
}
// Process the security-role-ref SecurityRoleRefMetaData
SecurityRoleRefsMetaData refs = bean.getSecurityRoleRefs();
+ if(refs != null)
for(org.jboss.metadata.javaee.spec.SecurityRoleRefMetaData ref : refs)
{
EJBRoleRefPermission p = new EJBRoleRefPermission(bean.getEjbName(), ref.getRoleName());
Modified: trunk/server/src/main/org/jboss/ejb/EjbModule.java
===================================================================
--- trunk/server/src/main/org/jboss/ejb/EjbModule.java 2007-10-15 05:15:01 UTC (rev 66119)
+++ trunk/server/src/main/org/jboss/ejb/EjbModule.java 2007-10-15 05:45:33 UTC (rev 66120)
@@ -186,7 +186,7 @@
String unauthenticatedPrincipal = unit.getAttachment("EJB.unauthenticatedIdentity", String.class);
if(unauthenticatedPrincipal == null)
unauthenticatedPrincipal = unit.getAttachment("EAR.unauthenticatedIdentity", String.class);
- metaData.setUnauthenticatedPrincipal(unauthenticatedPrincipal);
+ metaData.getJBossMetaData().setUnauthenticatedPrincipal(unauthenticatedPrincipal);
}
// Add the ApplicationMetaData for the jbossws ejb21 deployer to pickup later
if (unit.getAttachment(ApplicationMetaData.class) == null)
Modified: trunk/server/src/main/org/jboss/ejb/deployers/EjbDeployer.java
===================================================================
--- trunk/server/src/main/org/jboss/ejb/deployers/EjbDeployer.java 2007-10-15 05:15:01 UTC (rev 66119)
+++ trunk/server/src/main/org/jboss/ejb/deployers/EjbDeployer.java 2007-10-15 05:45:33 UTC (rev 66120)
@@ -198,9 +198,10 @@
ServiceConstructorMetaData ctor = new ServiceConstructorMetaData();
ctor.setSignature(
- new String[]{VFSDeploymentUnit.class.getName(), JBossMetaData.class.getName()}
+ new String[]{VFSDeploymentUnit.class.getName(), ApplicationMetaData.class.getName()}
);
- ctor.setParameters(new Object[]{unit, deployment});
+ ApplicationMetaData legacyMD = new ApplicationMetaData(deployment);
+ ctor.setParameters(new Object[]{unit, legacyMD});
ejbModule.setConstructor(ctor);
// set attributes
@@ -260,6 +261,8 @@
for(String iname : invokers)
{
InvokerProxyBindingMetaData imd = deployment.getInvokerProxyBinding(iname);
+ if (imd == null)
+ throw new DeploymentException("Failed to locate invoker: "+iname);
String invokerName = imd.getInvokerMBean();
if( invokerName.equalsIgnoreCase("default") )
{
More information about the jboss-cvs-commits
mailing list