我正在尝试将/ my / route / id映射到一个动作,但参数id保持为null。有谁知道我做错了什么?
控制器映射代码:
@Controller
@RequestMapping("/admin/alias")
public class AliasesController {
@RequestMapping(value = "{id}", method = RequestMethod.GET)
public @ResponseBody SampleAliasMaskModel index(Integer id) {
发出请求的代码
$('select[name=aliasMask]', ctx).change(function () {
var val = parseInt($(this).val(), 10);
if (val === -1)
return maskSelected(null);
if (!_.isNaN(val))
$.getJSON('alias/'+val, {}, function(mask){
maskSelected(mask);
});
})
请求本身:
答案 0 :(得分:3)
如果未使用调试信息编译spring,则必须将Pathvariable的名称指定为注释参数。
像这样:
@Controller
@RequestMapping("/admin/alias")
public class AliasesController {
@RequestMapping(value = "{id}", method = RequestMethod.GET)
public @ResponseBody SampleAliasMaskModel index(@PathVariable("id") Integer id) {
也许这就是原因。