I have created a simple app with Spring and AngularJS with CRUD functions.
Now, my scope variable that contains the arraylist that I pass is not updating when I create a new one.
This is my code for my AngularJS controller
$scope.agency = {id: null, name: '', contact: '', employees: []};
$scope.agencies = [];
$scope.getAllAgencies = function() {
    AgencyService.getAllAgencies()
        .then(
            function (response) {
                $scope.agencies = response;
            }
        )
};
$scope.getAllAgencies();
$scope.createAgency = function(agency) {
    AgencyService.createAgency(agency)
        .then(
                $scope.getAllAgencies(),
            function(errReponse){
                console.error('Error while creating Agency.');
            }
        );
};
$scope.submit = function () {
    console.log("Saving new Agency");
    $scope.createAgency($scope.agency);
    $scope.reset();
};
$scope.reset = function(){
    $scope.agency = {id: null, name: '', contact: '', employees: null};
    $scope.myForm.$setPristine(); //reset Form
};
Service
App.factory('AgencyService', ['$http', '$q', function($http, $q) {
return {
    getAllAgencies: function() {
        return $http.get('/agency')
            .then(
                function(response) {
                    return response.data;
                },
                function(errResponse){
                    console.error('Error while fetching agencies');
                    return $q.reject(errResponse);
                }
            )
    },
    createAgency: function(agency) {
        console.log("Creating Agency");
        return $http.post('/agency', agency)
            .then(
                function (response) {
                    return response.data;
                },
                function (errResponse) {
                    console.error('Error while create agency');
                    return $q.reject(errResponse);
                }
            )
    }
};
}]);
And these are my methods in Spring
Get Agencies
@RequestMapping(value = "/agency", method = RequestMethod.GET)
public ResponseEntity<List<Agency>> getAllAgencies() {
    List<Agency> agencies = agencyService.getAllAgencies();
    if (agencies.isEmpty()) {
        return new ResponseEntity<List<Agency>>(HttpStatus.NO_CONTENT);
    }
    return new ResponseEntity<List<Agency>>(agencies, HttpStatus.OK);
}
Creation of Agency
@RequestMapping(value = "/agency", method = RequestMethod.POST)
public ResponseEntity<Void> createAgency(@RequestBody Agency agency, UriComponentsBuilder ucBuilder) {
    if(agencyService.isAgencyExists(agency)) {
        System.out.println("CONFLICT");
        return new ResponseEntity<Void>(HttpStatus.CONFLICT);
    }
    agencyService.saveAgency(agency);
    HttpHeaders headers = new HttpHeaders();
    headers.setLocation(ucBuilder.path("/agency/{id}").buildAndExpand(agency.getId()).toUri());
    return new ResponseEntity<Void>(headers, HttpStatus.CREATED);
}
Note: that when I debug, after the post method it does not continue to my get method.
There is no error in this, when I reload it gets all including the one I just created.
Thanks!