2017-04-05 67 views
0

我有类似下面的AA请求映射:Spring MVC的RequestParam可选值

@RequestMapping(value = "/init/filter/", method = RequestMethod.POST) 
    @ResponseBody 
    public final Reponse filterGrid(
      @RequestParam(value = "nom", required = false) final String nom, 
      @RequestParam(value = "matricule", required = false) final String matricule, 
      final HttpServletRequest httpRequete, 
      final HttpServletResponse httpReponse, Model model) { 
} 

而且在我的javascript,我这个网址:

POST http://localhost:8080/project/pages/rest/consultation/bulletinhorscontrat/init/filter/nom=test 404 (Introuvable)

我得到了一个未找到页面

我试过用GET和我得到了相同的错误

我在Spring MVC方法中忘了什么?

感谢的

+0

您能否提供带有错误描述的任何日志? –

+0

在我的日志文件中我没有错误,我在浏览器中只有这个: Erreur网页编号:404 Navigateur:Mozilla 地址:../../pages/rest/consultation/bulletinhorscontrat/init/filter/nom = COTREZ 描述: 行政法院HTTP 404 - 型融洽D''政变 消息 描述的La的ressourcedemandéen''est PAS disponible。 的Apache Tomcat/7.0.59 – Pasja95

+0

要检查错误的详细信息,设置日志春级别进行调试 –

回答

0

用POST方法不能传递变量的链接,你应该使用@RequestBody代替。

但在你的情况Get方法应该做的工作,但即便如此,你需要更改链接的格式,这里的新链接:

http://localhost:8080/project/pages/rest/consultation/bulletinhorscontrat/init/filter?nom=t&matricule=mat 

从链接中删除最后一个/因为它是没有意义的,并将POST更改为获取:

@RequestMapping(value = "/init/filter", method = RequestMethod.GET) 
    public final Reponse filterGrid(
      @RequestParam(value = "nom", required = false) final String nom, 
      @RequestParam(value = "matricule", required = false) final String matricule, 
      final HttpServletRequest httpRequete, 
      final HttpServletResponse httpReponse, Model model) { 
} 
+0

我得到了更新我的代码后 – Pasja95

+0

你能提供你的类头以验证您正在使用 – bougsid

+0

@RequestMapping(“链接相同的错误/休息/咨询/ bulletinhorscontrat“) 公共类Controleur延长ControleurRacine。 我在控制器的其他方法,我可以访问他们,错误不是在控制器链接 – Pasja95

相关问题