code: public static Object getEmbeddedGenericObjectInstance(Field embeddedCollectionField)
      {
          Class<?> embeddedClass = PropertyAccessorHelper.getGenericClass(embeddedCollectionField);
          Object embeddedObject = null;
          // must have a default no-argument constructor
          try
          {
              embeddedClass.getConstructor();
              embeddedObject = embeddedClass.newInstance();
          }
          catch (NoSuchMethodException nsme)
          {
              throw new PersistenceException(embeddedClass.getName()
                      + " is @Embeddable and must have a default no-argument constructor.");
          }
          catch (InstantiationException e)
          {
              throw new PersistenceException(embeddedClass.getName() + " could not be instantiated");
          }
  
          catch (IllegalAccessException e)
          {
              throw new PersistenceException(embeddedClass.getName() + " could not be accessed");
          }
          return embeddedObject;
      }
docs: Gets the embedded generic object instance.
  
  @param embeddedCollectionField
  the embedded collection field
  @return the embedded generic object instance