Тег <form: errors> весной 3 не показывает ошибки - PullRequest
0 голосов
/ 27 июля 2011

Я работаю над приложением Spring 3 MVC с проверкой формы. Проверка работает на стороне сервера, но даже если я возвращаю BindingResult, тег не показывает сообщение при сбое проверки.

Метод контроллера:


  @RequestMapping(value = "server/{serverId}/save", method = RequestMethod.POST)
  public ModelAndView saveServer( @PathVariable long serverId,
                                  @Valid ServerEditor serverEditor, 
                                  BindingResult result){

        AdminSystemServer server = adminService.loadServer(serverId);
        if (!result.hasErrors()){
            server.setServerName(serverEditor.getServerName());
            server.setServerUrl(serverEditor.getServerUrl());
            adminService.save(server);
        }

        mv.setViewName(".layout.servers.manage.server");
        mv.addObject("server", server);
        mv.addObject("result", result);
        return mv;
    }

Форма JSP

<form:form commandName="serverEditor" action="/admin/app/servers/manage/system/save">
<span class="tableRow">
    <label for="serverName">System Name</label>
    <form:input path="serverName" class="required" /><br />
</span>

<span class="tableRow">
    <form:errors cssClass="errors" path="serverName" />
    </span>

</form:form>

Я знаю, что проверка работает, когда я перехожу к отладке и вижу ошибки в результате привязки, но сообщения никогда не появляются.

У кого-нибудь есть идеи?

Ответы [ 3 ]

0 голосов
/ 28 июля 2011

В вашем примере кода вы видите ошибку " systemName ", в то время как у связанного компонента есть свойство " serverName " ...

0 голосов
/ 04 августа 2011

Оказывается, моей проблемой, о которой кто-то спрашивал ранее, но я не думал, что она была связана, было объявление ModelAndView на уровне класса.Это предотвращает правильную вставку результата привязки в модель.

0 голосов
/ 28 июля 2011

Попробуйте добавить

@ModelAttribute("commandName"),

как параметр метода после @PathVariable long serverId,

Также вы можете опубликовать больше вашего JSP?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...