code: private Object getCompoundKey(Attribute attribute, Object entity)
          throws InstantiationException, IllegalAccessException {
          Object compoundKeyObject = null;
          if (entity != null) {
              compoundKeyObject = PropertyAccessorHelper.getObject(entity, (Field) attribute.getJavaMember());
              if (compoundKeyObject == null) {
                  compoundKeyObject = ((AbstractAttribute) attribute).getBindableJavaType().newInstance();
              }
          }
  
          return compoundKeyObject;
      }
docs: Gets the compound key.
  
  @param attribute
  the attribute
  @param entity
  the entity
  @return the compound key
  @throws InstantiationException
  the instantiation exception
  @throws IllegalAccessException
  the illegal access exception