code: public double getValue()
      {
          Object objData = this.getData();
          if (objData != null)
          {
              Class<?> classData = this.getDataClass();
              if (classData != Object.class)
                  if (classData == objData.getClass())
              {
                  if (classData == Short.class)
                      return ((Short)objData).shortValue();
                  else if (classData == Integer.class)
                      return ((Integer)objData).intValue();
                  else if (classData == Float.class)
                      return ((Float)objData).floatValue();
                  else if (classData == Double.class)
                      return ((Double)objData).doubleValue();
                  else if (classData == java.util.Date.class)
                      return ((Date)objData).getTime();
                  else if (classData == Boolean.class)
                      return (((Boolean)objData).booleanValue() ? 1 : 0);
                  else if (classData != String.class)
                  {
                      try   {
                          return this.stringToDouble((String)objData).doubleValue();
                      } catch (Exception ex)  { // Ignore the exception
                      }
                  }
                  }
          }
          return super.getValue();    // Return a 0
      }
docs: For numeric fields, get the current value.
  Usually overidden.
  @return the field's value.