code: private void onEmbeddableId(EntityMetadata entityMetadata, MetamodelImpl metaModel, Table schemaTable,
              Object entity, Row row) throws InstantiationException, IllegalAccessException
      {
          FieldDef fieldMetadata;
          FieldValue value;
          EmbeddableType embeddableType = metaModel.embeddable(entityMetadata.getIdAttribute().getBindableJavaType());
          Set<Attribute> embeddedAttributes = embeddableType.getAttributes();
  
          Object embeddedObject = entityMetadata.getIdAttribute().getBindableJavaType().newInstance();
          for (Attribute attrib : embeddedAttributes)
          {
  
              String columnName = ((AbstractAttribute) attrib).getJPAColumnName();
  
              fieldMetadata = schemaTable.getField(columnName);
              value = row.get(columnName);
              NoSqlDBUtils.get(fieldMetadata, value, embeddedObject, (Field) attrib.getJavaMember());
          }
  
          PropertyAccessorHelper.set(entity, (Field) entityMetadata.getIdAttribute().getJavaMember(), embeddedObject);
      }
docs: On embeddable id.
  
  @param entityMetadata
  the entity metadata
  @param metaModel
  the meta model
  @param schemaTable
  the schema table
  @param entity
  the entity
  @param row
  the row
  @throws InstantiationException
  the instantiation exception
  @throws IllegalAccessException
  the illegal access exception