code: private Object getKey(CompositeType rowType, String key, String value)  {
          OpenType keyType = rowType.getType(key);
          if (SimpleType.STRING == keyType) {
              return value;
          } else if (SimpleType.INTEGER == keyType) {
              return Integer.parseInt(value);
          } else if (SimpleType.LONG == keyType) {
              return Long.parseLong(value);
          } else if (SimpleType.SHORT == keyType) {
              return Short.parseShort(value);
          } else if (SimpleType.BYTE == keyType) {
              return Byte.parseByte(value);
          } else if (SimpleType.OBJECTNAME == keyType) {
              try {
                  return new ObjectName(value);
              } catch (MalformedObjectNameException e) {
                  throw new IllegalArgumentException("Can not convert " + value + " to an ObjectName",e);
              }
          } else {
              throw new IllegalArgumentException("All keys must be a string, integer, long, short, byte or ObjectName type for accessing TabularData via a path. " +
                                                 "This is not the case for '"
                                                 + key + "' which is of type " + keyType);
          }
      }
docs: See also #97 for details.