@Override public Class<?> getType(ELContext context, Object base, Object property) { if (context == null) { throw new NullPointerException(); } if (base != null || !(property instanceof String)) { return null; } String beanName = (String) property; try { if (beanNameResolver.isNameResolved(beanName)) { Class<?> result = beanNameResolver.getBean(beanName).getClass(); context.setPropertyResolved(base, property); return result; } } catch (Throwable t) { Util.handleThrowable(t); throw new ELException(t); } return null; }