Я знаю, что badRequest () в игровом фреймворке может привести к повторной отрисовке страницы, например,
badRequest(views.html.admin())
,
но я хотел бы вернуть String, в моем случае SQLException.
(SQLException e)
Если я return ok(e.toString())
вместо return badRequest(e.toString())
it работает, я думаю, что проблема может быть в возвращаемом типе badRequest. Если я предупреждаю данные, которые я получаю от вызова ajax, я получаю за неверный запрос [Object] [object].
Можно ли вообще вернуть String в badRequest () в java play framework?
Мой код Javascript таков :)
$("#deleteBuildingConfirm").click(function(q){
$('#confirmDelete').modal('hide');
$.ajax({
type : 'POST',
url : '@routes.Admin.deleteBuilding()',
data : {
id: idOfBuild, name: nameOfBuild
},
success : function(data) {
alert(data);
/** Wenn ein gebäude.. */
},
error : function(err) {
alert(err);
}
});
return true;
});
at alert(err)
я всегда получаю [Object] [Object], когда вызываю SQLException.
Это моя функция Java:
public static Result deleteBuilding(){
final Map<String, String[]> values = request().body().asFormUrlEncoded();
final Long idToDelete = Long.parseLong(values.get("id")[0]);
final String nameToDelete = values.get("name")[0];
String message="Deleted on server, row with id: "+idToDelete+"\n "
+"Building with name: "
+nameToDelete+" has been deleted.";
try {
Building.delete(idToDelete);
return ok(message);
} catch (SQLException e) {
// TODO Auto-generated catch block
final String badMessage = e.toString();
return badRequest(badMessage);
}
}
Заранее спасибо :), это меня очень беспокоит! Ценю вашу помощь!