code: public static <T> T getSpringBean(final Class<T> beanClass){
      return getSpringBean(SpringUtilConstants.CONTEXT_DEFINITION, beanClass);
    }
docs: Takes the given beanClass (which is probably an interface) and requests
  that Spring instantiate a bean for that class. The underlying mechanism is
  specific to us, in that we expect the beanClass to have a static String
  'BEAN_NAME', which we will then pass to Spring to get our bean.
  <p>
  <b>WARNING</b> YOU MAY ONLY CALL THIS METHOD ONCE!<br>
  The reason for this is that you should only be entering Spring from one
  direction, so if you call this twice, you're not following that advice.
  Instead, you should call SpringUtil.{@link #getInstance()}.
  {@link #getBean(Class)}
  
  @throws org.springframework.beans.BeansException If there is a problem loading the bean, if it does not have a
  'BEAN_NAME' property, or if you call this method a second time.