下面列出了怎么用javax.annotation.ManagedBean的API类实例代码及写法,或者点击链接到github查看源代码。
@Override
protected void handleScanResult(ScanResult scanResult) {
super.handleScanResult(scanResult);
Map<Class<? extends Annotation>, Set<Class<?>>> annotatedClasses = new HashMap<>();
Arrays.asList(
ManagedBean.class,
FacesComponent.class,
FacesBehavior.class,
FacesConverter.class,
NamedEvent.class,
FacesRenderer.class,
FacesBehaviorRenderer.class,
FacesValidator.class
).forEach(annotationClass -> {
List<Class<?>> classes = scanResult.getClassesWithAnnotation(annotationClass.getName()).loadClasses();
annotatedClasses.put(annotationClass, new HashSet<>(classes));
});
JoinFacesAnnotationProvider.setAnnotatedClasses(annotatedClasses);
}
private boolean isIgnoredReferenceType(final String typeName, final ClassLoader loader) {
if (ignoredReferenceTypes.contains(typeName)) {
return true;
} else if (loader != null) {
try {
final Class<?> type = loader.loadClass(typeName);
return type.isAnnotationPresent(ManagedBean.class);
} catch (final ClassNotFoundException e) {
// ignore
}
}
return false;
}
@Test
public void cdiManagedBean() {
testSingleComponent(SampleManagedBean.class, ManagedBean.class);
}
@Test
public void cdiManagedBean() {
testSingleComponent(SampleManagedBean.class, ManagedBean.class);
}