@Override public Key add(Training object) { try { Entity training = new Entity(DatabaseInfo.TRAINING_DATABASE); training.setProperty(DatabaseInfo.TRAINING_TITLE, object.getTitle()); training.setProperty(DatabaseInfo.TRAINING_DOMAIN, object.getDomain()); training.setProperty(DatabaseInfo.TRAINING_DESCRIPTION, object.getDescription()); training.setProperty(DatabaseInfo.TRAINING_USER_MAIL, object.getUserMail()); training.setProperty(DatabaseInfo.TRAINING_TOTAL_DURATION, object.getTotalDuration()); Key trainingKey = dataStore.put(training); if (object.getExercises() != null && !object.getExercises().isEmpty()) { for (Exercise ex : object.getExercises()) { ex.setParentKey(trainingKey); exerciseDao.add(ex); } } return trainingKey; } catch (Exception e) { System.out.println(e.getMessage()); } return null; }