code: public static Object getMappedProperty(Object bean, String name)
          throws IllegalAccessException, InvocationTargetException, NoSuchMethodException, Exception
      {
          if(bean == null)
              throw new IllegalArgumentException("No bean specified");
          if(name == null)
              throw new IllegalArgumentException("No name specified");
          int delim = name.indexOf('(');
          int delim2 = name.indexOf(')');
          if(delim < 0 || delim2 <= delim)
          {
              throw new IllegalArgumentException("Invalid mapped property '" + name + "'");
          } else
          {
              String key = name.substring(delim + 1, delim2);
              name = name.substring(0, delim);
              return getMappedProperty(bean, name, key);
          }
      }
docs: --------------------------------------------------------