code: protected Object resolveProviderConfig(String exp, Map<String, ? extends Object> contextMap, LaContainer container,
              Class<?> resultType) {
          if (exp.startsWith(PROVIDER_GET) && exp.endsWith(METHOD_MARK) && exp.contains(".") && !exp.contains("\"")) {
              final String[] tokens = exp.split("\\.");
              if (tokens.length > 1) {
                  Object component = null;
                  BeanDesc beanDesc = null;
                  for (String prop : tokens) {
                      if (prop.endsWith(METHOD_MARK)) { // method
                          if (component == null) { // e.g. getJdbcUrl() only
                              break;
                          }
                          final String methodName = prop.substring(0, prop.length() - METHOD_MARK.length());
                          component = beanDesc.invoke(component, methodName, (Object[]) null);
                          beanDesc = BeanDescFactory.getBeanDesc(component.getClass());
                      } else { // component or property
                          if (beanDesc == null) { // first element
                              if (container.hasComponentDef(prop)) { // component
                                  component = container.getComponent(prop);
                                  beanDesc = BeanDescFactory.getBeanDesc(component.getClass());
                              } else {
                                  break;
                              }
                          } else { // next elements, property
                              final PropertyDesc propertyDesc = beanDesc.getPropertyDesc(prop);
                              if (propertyDesc != null) {
                                  component = propertyDesc.getValue(component);
                                  beanDesc = BeanDescFactory.getBeanDesc(component.getClass());
                              } else {
                                  break;
                              }
                          }
                      }
                  }
                  if (component != null) {
                      return component;
                  }
              }
          }
          return null;
      }
docs: ======================