private Class<?> getManagedBeanClass(ClassLoader cl, ManagedBeanMetaData managedBean) throws DeploymentException { String klass = managedBean.getManagedBeanClass(); try { return cl.loadClass(klass); } catch (ClassNotFoundException cnfe) { throw new DeploymentException(cnfe); } }
private Class<?> getBeanClass(DeploymentUnit unit, ManagedBeanMetaData managedBean) throws ClassNotFoundException { ClassLoader cl = unit.getClassLoader(); return Class.forName(managedBean.getManagedBeanClass(), false, cl); }
/** * Returns the managed bean (if any) whose managed bean class name is equal to the passed <code>mbClassName</code> * @param unit The deployment unit within which the Managed Bean is scanned for. Note that, the child of parent * deployment units of the passed <code>unit</code> will <i>not</i> be looked into * @param mbClassName The fully qualified class name of the managed bean being searched * @return */ private ManagedBeanMetaData getManagedBean(DeploymentUnit unit, String mbClassName) { ManagedBeanDeploymentMetaData managedBeanDeploymentMetaData = unit.getAttachment(ManagedBeanDeploymentMetaData.class); if (managedBeanDeploymentMetaData == null) { return null; } Collection<ManagedBeanMetaData> managedBeans = managedBeanDeploymentMetaData.getManagedBeans(); if (managedBeans == null || managedBeans.isEmpty()) { return null; } for (ManagedBeanMetaData managedBean : managedBeans) { if (mbClassName.equals(managedBean.getManagedBeanClass())) { return managedBean; } } return null; }
throw new DeploymentException("Could not load managed bean class " + managedBean.getManagedBeanClass() + " in unit " + unit, cnfe);