我的一個控制器出現了問題。當我發送(POST)數據從角度到Java控制器使用(傑森內容類型)時,我看到在主題中可見的錯誤。所以我無法捕捉到服務器的響應。控制器抓住這個請求是好的,所以在這個案例書中正確地添加到數據庫。 Firebug顯示404錯誤,但當我檢查郵遞員時,我看到415不支持的媒體類型。如果控制器工作正常,爲什麼會有這樣的例外。415不受支持的媒體類型(JAVA + Angular + RestFULL JSON)
這是示例JSON:
{"title":"fgthbfgd","authors":[{"author_id":24,"author":"danielle steel"}],"genres":[{"genre_id":1,"genre":"Dramat"}],"description":"rthg","path_image":"19296.png"}
,這是控制器:
@SuppressWarnings("finally")
@RequestMapping(value = "/rest/book", consumes = "application/json", produces = "application/json", method = RequestMethod.POST)
public MessageDTO addNewBook(@RequestBody BookDTO newBook) {
MessageDTO message = new MessageDTO();
try {
bookService.addNewBook(newBook);
message.setCheck(true);
} catch (BookTitleException e) {
message.setCheck(false);
message.setDescription("Ksiązka o tym tytule juz istnieje.");
e.printStackTrace();
} finally {
return message;
}
}
這是BookDTO
public class BookDTO implements Serializable{
private static final long serialVersionUID = -5057364006691079475L;
private Integer id;
private AuthorEntity [] authors;
private String description;
private GenreEntity [] genres;
private String title;
private String path_image;
private double rate;
private Integer progressBar;
private boolean flagRate;
private double userRate;
/* geters and seters */
}
這是角代碼:
var bookResource = $resource($rootScope.restUrl + 'book');
var book = {
title : $scope.title,
authors : $scope.author,
genres : $scope.genre,
description : $scope.description,
path_image: null
}
service.addNewBook = function(book){
var deferred = $q.defer();
bookResource.save(book)
.$promise.then(function(data){
deferred.resolve(data);
}, function(){
deferred.reject("Error during adding new book.");
});
return deferred.promise;
}
這只是我應用中的一個問題。在另一種情況下所有工作都正常
可以u顯示當然BookDTO類結構 – Anita 2015-04-02 13:28:03
。我編輯了我的帖子。 – user2590727 2015-04-02 13:38:51
您可以添加angularjs電話嗎? – jmgross 2015-04-02 13:44:08