Aktywne Wpisy

jarosuaf +361
Tradycyjnie religia u moich dzieci (nie chodzą na nią) #!$%@? w środek dnia, coby frekwencja się zgadzała. Poza tym w IV klasie szkoły podstawowej jest więcej opowiadania bajek o panu z brodą na chmurce niż historii, informatyki i przyrody. Ha tfu na kk.
#bekazpisu #bekazkatoli #bekazkonfederacji
W komentarzu drugi screen.
#bekazpisu #bekazkatoli #bekazkonfederacji
W komentarzu drugi screen.
spirityfree +9




Czy ktoś wie czemu
$http({
method: 'GET',
url: '/rest/cart/' + cartId
}).then(function successRefresh(singleCart) {
console.log("Success, im inside");
}, function errorCallback(singleCart) {
console.log("error in refreshCart");
});
zwraca HTTP Status 400 - Incorrect request, check request data?
/rest/cart/{cartId} jest odpowiednio mapowany, cartId ma postać typu
AE16AF7C24A1ABAFC67ECC6DB0175ABB
Z controllera któy mapuje /rest/cart/{cartId} zwracany jest obiekt Cart.
ustawiam $scope.cart = singleCart; wewnatrz successRefresh, nigdy jednak się tam nie dostaje, bo zawsze wchodzi w errorCallback
@RequestMapping(value = "/{cartId}", method = RequestMethod.GET)
public @ResponseBody Cart read(@PathVariable(value = "cartId") String cartId) {
System.out.println("I'm in read method in /rest/cart controller. CartId: " + cartId);
for (Item item : cartService.read(cartId).getProducts().values()) {
System.out.println(item.getProduct().getProductName());
}
return cartService.read(cartId);
}
Skoro leci 400 to szukałbym przyczyny w mapowaniu, w logach podczas startup'u spring wypisuje w logach zarejestrowane endpointy i ich ścieżki
Adnotacja klasy kontrolera:
@RestController
@RequestMapping(value = "rest/cart")
public class CartRestController
I requestmapping dla kontrolera który miałby złapać to /rest/cart/{cartId}
@RequestMapping(value = "/{cartId}", method = RequestMethod.GET)
public @ResponseBody Cart read(@PathVariable(value = "cartId") String cartId) {
System.out.println("I'm in read method in /rest/cart controller. CartId: " + cartId);
for (Item item : cartService.read(cartId).getProducts().values()) {
System.out.println(item.getProduct().getProductName());
}
return cartService.read(cartId);
}
1. O ile kojarzę to spring i tak wycina slashe jeżeli są na początku/końcu url'a
2. Spróbuj odpytać się curlem tego endpointa czy nasł#!$%@? tj.: curl -X GET http://127.0.0.1:PORT/rest/cart/1
Osobiście nie widzę na chwilę obecną co jest nie tak.
HTTP Status 500 - Internal server error ( ͡º ͜ʖ͡º)
Przy czym w konsoli z printow mam:
I'm in read method in /rest/cart controller. CartId: 1
I'm in read method in Cart service. cartId: 1
I'm in read method in Cart DAO. cartId: 1
@michalion: @Eoghan:
i jest dobrze skonfigurowany. Sprawdź stack w poszukiwaniu co wysypało błąd (ale to na później ofkors).
W takim razie to wina front-endu.
Spróbuj do atrybutu url w obiekcie który przekazujesz $http dać bezwzględny url, tj. 'http://127.0.0.1:8080/rest/cart/'+cartId
Dałem:
$http({
method: 'GET',
url: 'http://localhost:8080/rest/cart/' + cartId
})
Gdy próbuje bezpośrednio w przeglądarce wklepać http://localhost:8080/rest/cart/8EA82A4472141E4DE2C96439EC7EA951
to dostaję HTTP Status 400 - Incorrect request, check request data
natomiast gdy próbuję bezpośrednio wklepać
http://localhost:8080/rest/cart/1
to dostaję HTTP Status 500 - Internal server error
zrobiłem sobie małego endpointa który zwraca mi to id. Wszystko mi działa :-/
Jakiej wersji Springa używasz?