//if value is not null but we get back a byteVal of null, it means the entity has not been
//initialized with a key yet, BUT this is required to be able to save this object
String owner = "'"+field.getDeclaringClass().getSimpleName()+"'";
String child = "'"+field.getType().getSimpleName()+"'";
String fieldName = "'"+field.getType().getSimpleName()+" "+field.getName()+"'";
throw new ChildWithNoPkException("The entity you are saving of type="+owner+" has a field="+fieldName
+" that does not yet have a primary key so you cannot save it. To correct this\n" +
"problem, you can either\n"
+"1. SAVE the "+child+" BEFORE you save the "+owner+" OR\n"
+"2. Call entityManager.fillInWithKey(Object entity), then SAVE your "+owner+"', then save your "+child+" NOTE that this" +
"\nmethod #2 is used for when you have a bi-directional relationship where each is a child of the other");