403 Forbidden在尝试保存到数据库时返回

时间:2013-05-23 16:02:02

标签: java javascript spring hibernate oracle-sqldeveloper

我正在尝试使用Spring和Hibernate一次保存/更新几个记录到我的数据库(sql-developer)。我通过ajax调用通过我的控制器,服务层,Dao,循环遍历我的Hvo对象列表并确定它是否已经在数据库中,然后保存新记录或更新目前的记录。一旦它通过这个循环(看起来成功)我得到403错误,并在页面上没有警报。 Eclipse中的堆栈跟踪没有错误。

这是我的javascript:

function saveLimXrefHvo(){

var list = []; 

//declare variables for the data pieces
$('#limAssigned li').each(function (index, li) {
var cdeBusUnit = $('select[name="cde_bus_unit"]').val();
var cdeRatingPlan = $('select[name="cde_rating_plan"]').val();
var cdeLimit = $(this).attr('id');
var txtLimitRptOcc = $('#textOcc').val();
var txtLimitRptCm = $('#textCM').val();
var uidMod = $('#saveRTnumberLimXref').val();
var numSortOrder = (index + 1);

//put the variables in the JSON object
var JSONObject = {
        "cdeBusUnit" : cdeBusUnit,
        "cdeRatingPlan" : cdeRatingPlan,
        "cdeLimit" : cdeLimit,
        "txtLimitRptOcc" : txtLimitRptOcc,
        "txtLimitRptCm" : txtLimitRptCm,
        "uidMod" : uidMod,
        "numSortOrder" : numSortOrder
};

list.push(JSONObject);

});
var dat = JSON.stringify(list);

$.ajax({
    type : 'PUT',
    url : 'saveLimXrefHvo.do',
    contentType : 'application/json',
    data : dat,
    success : function(){
        alert("This record has been successfully saved.");
    }
});//end ajax

}

这是我的控制器方法:

    @RequestMapping(value = "/saveLimXrefHvo.do", method = RequestMethod.PUT,
consumes="application/json")

public void saveLimXrefHvo(@JsonParam(innerType=LimitXrefHvo.class) 
List<LimitXrefHvo> limitXrefHvoList) throws JsonParseException, 
JsonMappingException, IOException {

limitService.saveLimXrefHvo(limitXrefHvoList);
}

我一直想弄清楚为什么我整个早上都会收到403错误。我尝试通过在我的循环的“else”部分中单独删除和单独保存来更改Dao方法,但这不起作用。有人建议在控制器方法中添加“消耗”。那也行不通。我对建议,想法,问题持开放态度。提前谢谢!

1 个答案:

答案 0 :(得分:1)

你的Spring控制器是否知道如何处理没有响应(即void)?

尝试返回指示成功操作的JSON对象。

示例:

{
  "success": true,
  "message": "Successfully saved... blah blah"
}

实施可能类似于:

*在视野之外(我添加了produce =“application / json”)

@RequestMapping(value = "/saveLimXrefHvo.do", method = RequestMethod.PUT, consumes="application/json", produces="application/json")
public ResponseMap saveLimXrefHvo(@JsonParam(innerType=LimitXrefHvo.class)  List<LimitXrefHvo> limitXrefHvoList) throws JsonParseException, JsonMappingException,  IOException {

    limitService.saveLimXrefHvo(limitXrefHvoList);

    return new ResponseMap("Success");
}