Ich versuche, ein wenig einfach AngularJS mit dieser Jboss quickstart zu lernen: https://github.com/jboss-developer/jboss-wfk-quickstarts/tree/c488a5b/kitchensink-angularjs-bootstrapNeu bei Angular - Wie man einen ausgewählten Wert aus einer Tabelle entfernen
Hier ist die service.js Datei:
angular.module('membersService', ['ngResource']).
factory('Members', function($resource){
return $resource('rest/members/:memberId', {});
});
Ziemlich einfach, oder? Und hier ist die relevanten Teile der controllers.js Datei:
$scope.register = function() {
Members.save($scope.newMember, function(data) {}, function(result) {});
};
$scope.setSelected = function (member) {
$scope.selectedMember = member;
$scope.successMessages = [ $scope.selectedMember.name ];
}
$scope.unregister = function() {
$scope.successMessages = [ 'Selected: ' + $scope.selectedMember.name ];
Members.remove($scope.selectedMember, function(data) {}, function(result) {});
};
Die „successMessages“ wird bestätigt, dass der Wert I Auswahl bin erfasst zu werden. Hier sind die relavent POST/DELETE Methoden aus der MemberResourceRESTService.java Klasse:
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Response createMember(Member member) {
Response.ResponseBuilder builder = null;
try {
registration.register(member);
builder = Response.ok();
} catch (Exception e) {}
return builder.build();
}
@DELETE
@Produces(MediaType.APPLICATION_JSON)
public Response removeMember(Member member) {
Response.ResponseBuilder builder = null;
try {
registration.unregister(member);
builder = Response.ok();
} catch (Exception e) {}
return builder.build();
}
Grundsätzlich ist die POST/Create Mitglied Stück funktioniert, aber die DELETE/entfernen Mitgliedruhe Methode wird immer ein NULL-Mitglied übergeben I‘. Ich bin mir nicht sicher, warum es nicht vom Client herüberkommt und welche zusätzliche Datei/Konfiguration ich überprüfen muss. Entschuldigung, wenn das eine neue Frage ist.
Verwendung des Browsers Debugger und prüfen, ob die Delete-URL-aPI-Aufruf korrekt ist. – Hoyen
Das Mitglied erreicht nicht den URL-API-Aufruf zum Löschen. Ich bin mir nicht sicher, warum es nicht in die DELETE-URL geschafft wird, aber es scheint, dass es die POST-URL oben erreicht. – daniel9x
Hat $ scope.selectedMember eine 'ID'? Weil alles, was Sie wirklich brauchen, um das Mitglied zu entfernen, die ID aus dem Objekt ist. Überprüfen Sie im Grunde, ob es existiert: $ scope.selectedMember.id oder in Ihrem Fall könnte es $ scope.selectedMember.memberId – Hoyen