public void replicateToMongoDB(StateTraverser tasks) { List<State> states = tasks.getWorkflowHelperWrapper().getAllEntities(); for (State state : states) { MongoState mongoState = new MongoState(); mongoState.setName(state.getName()); mongoState.setId(state.getPk()); MongoCountry country = countryMongoDao.find(state.getCountry().getPk()); mongoState.setCountry(country); mongoState.setId(state.getPk()); stateMongoDao.merge(mongoState); } }