Spring MVC Привязка данных Проблема для значений параметров с запятыми - PullRequest
0 голосов
/ 21 марта 2019

Когда My Spring Controller получает значения параметров с запятыми в нем, Spring рассматривает его как массив параметров. Кто-нибудь сталкивался с такой проблемой? Образец фрагмента для воспроизведения проблемы.

  public class Pojo {
        List<String> param;

        public List<String> getParam() {
            return param;
        }

        public void setParam(List<String> param) {
            this.param = param;
        }
    }

@Controller
public class ParamController {

        @ModelAttribute("myPojo")
        public Pojo getPojo(){
            System.out.println("From :: myPojo");
            return new Pojo();
        }

        @RequestMapping(value={"/chk-param"})
        private String getOtherView(@ModelAttribute(name="myPojo") Pojo pojo,HttpServletRequest req){
            System.out.println(System.nanoTime()+"::From chk-param");
            System.out.println(System.nanoTime()+"::From chk-param Spring Params");
            for(String param: pojo.getParam()){
                System.out.println("Param::"+param);
            }
            System.out.println(System.nanoTime()+"::From chk-param ServletReq Params");
            for(String param: req.getParameterValues("param")){
                System.out.println("ServletReq Param::"+param);
            }
            return null;
        }
}

http://localhost:8080/paramchk/chk-param.html?param=jim2%2Cjohn2&name=chk&value=fine - не работает

http://localhost:8080/paramchk/chk-param.html?param=paul&param=jim2%2Cjohn2&name=chk&value=fine - Работа

Итак, как правильно обрабатывать привязку данных, когда один параметр присутствует и содержит запятые. Может кто-нибудь помочь решить эту проблему .

Спасибо, Пол

...