【发布时间】:2017-02-07 22:32:04
【问题描述】:
我有一个简单的 JSP 文件,其中包含一些收音机、一个文本输入和一个按钮。 在 onClick 按钮中,我正在向 Spring 控制器发出 Ajax 请求,如下所示:
function callFiltrarViaAJAX() {
var filtro = $("#filtro").val();
var optFiltro = $('input[name=optFiltro]:checked').val();
$.ajax({
type : "GET",
url : "filtrar",
//dataType : "json",
data : {
filtro : filtro,
optFiltro : optFiltro
},
success: function(data) {
console.log("SUCCESS: ", data);
},
error: function(e) {
console.log("ERROR: ", e);
},
done: function(e) {
console.log("DONE");
}
});
}
在 Spring 控制器中,我使用以下代码成功接收到此请求:
@Controller
public class FiltroController {
@RequestMapping(value = "/filtrar", method = RequestMethod.GET)
public @ResponseBody String filtrarVacina(FiltroTO filtro, HttpServletResponse response, ModelAndView model) {
VacinaTO v = new VacinaTO();
v.setId(new Long(10));
v.setLote("Lote 1");
v.setNome("BCG");
model.addObject("vacina", v);
response.setStatus(200);
return "TEST OK";
}
}
正如您在上面的代码中看到的,我在 ModelAndView 中添加了一个 POJO 对象,我试图在 JSP 中使用它来在表中显示 Ajax 请求的返回。 我的 Ajax 请求也成功返回,但问题是即使成功返回我也无法使用 POJO 对象,当我尝试通过表达式语言访问该对象时,我什么也没得到。 我一直在搜索这种情况,发现了很多内容,但是我找到的解决方案都没有对我有用,但我找到了一个有趣的答案:
那么,这是否意味着我无法通过 Ajax 请求在同一个 JSP 文件中获取新参数?如果是,那么 JSON 文件是否是从 Spring 控制器获取返回的更好方法?
【问题讨论】: