0
我正在向我的控制器发送一个带有特定参数的URL,这通常很好。我正在使用javascript函数encodeURI()对参数进行编码。Spring MVC Url为什么我在URL中对换行进行编码时会得到404
但是一旦出现换行符,我会收到404错误。
这是一个工作URL:
http://localhost:8080/Weasy/virtualtable/execQuery/46/select%20*%20from%20payment
这是一个非工作网址:
http://localhost:8080/Weasy/virtualtable/execQuery/46/select%20*%20%0Afrom%20payment
这是我的控制器方法:
@RequestMapping("execQuery/{schema_id}/{query}")
public ModelAndView execQuery(
@PathVariable("schema_id") Integer schemaId
, @PathVariable("query") String query) throws Exception {
SrcSchema schema = this.srcschemaService.getRowById(schemaId);
ModelAndView mav = new ModelAndView("virtualtable/form");
mav.addObject("schema", schema);
mav.addObject("query", query);
try {
int limit = 10;
List<Map<String, Object>> rows = jdbcService.executeQuery(schema.getConnection(), query, limit);
mav.addObject("rows", rows);
mav.addObject("message", "<span class='msg-info'>Result Set reduced to "+limit+" rows</span>");
} catch (Exception ex) {
logger.error("Error executing sql", ex);
mav.addObject("message", "<span class='msg-error'>"+ex.getMessage()+"</span>");
}
return mav;
}
为何不工作?