private void readClientProperties(final Element element) {
    Element propertiesElement = LwXmlReader.getChild(element, UIFormXmlConstants.ELEMENT_CLIENT_PROPERTIES);
    if (propertiesElement == null) return;
    final List<Element> clientPropertyList = propertiesElement.getChildren();
    for (Element prop : clientPropertyList) {
      final String propName = prop.getName();
      final String className = LwXmlReader.getRequiredString(prop, UIFormXmlConstants.ATTRIBUTE_CLASS);

      LwIntrospectedProperty lwProp;
      if (className.equals(Integer.class.getName())) {
        lwProp = new LwIntroIntProperty(propName);
      }
      else if (className.equals(Boolean.class.getName())) {
        lwProp = new LwIntroBooleanProperty(propName);
      }
      else if (className.equals(Double.class.getName())) {
        lwProp = new LwIntroPrimitiveTypeProperty(propName, Double.class);
      }
      else {
        Class propClass;
        try {
          propClass = Class.forName(className);
        }
        catch (ClassNotFoundException e) {
          continue;
        }
        lwProp = CompiledClassPropertiesProvider.propertyFromClass(propClass, propName);
      }

      if (lwProp != null) {
        final Object value;
        try {
          value = lwProp.read(prop);
        }
        catch (Exception e) {
          continue;
        }
        myDelegeeClientProperties.put(propName, value);
      }
    }
  }
private void readClientProperties(final Element element)