modelMap.addAttribute("SYSTEM_NAME", SessionUtils.getInstance(request).getSysConfigItem(JQuickConstant.SYSTEM_NAME)); modelMap.addAttribute("COPYRIGHT_INFO", SessionUtils.getInstance(request).getSysConfigItem(JQuickConstant.COPYRIGHT_INFO)); return new ModelAndView("jquick/login/loginpage_"+loginPage,modelMap);
确实是由于json字符串导致的,因为json中有“:”。 new ModelAndView("redirect:/"+legalFile+".do?json="+json);通过这一句可以看出,spring的ModelAndView在解析参数的时候会将“:”前后的字符串作为解析的变量,而你的json字符串中的“:”前后的字符串根本就不符合解析规则,所以报错。 解决方法:将json字符串中的“:”替换为别的符号,接受的时候再将它替换为“:”
请教: 从前台传过来时,没有问题,显然,和前台无关,这点可以判断 所以,有如下疑惑: 1、json串在new ModelAndView("redirect:/"+legalFile+".do?json="+json);报错, 于是,我采用json = json.replace(':','_'); 将所有的':'转换成'_' , 但是,依然报错:exception org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalArgumentException: Model has no value for '"userName"_"","userPasswd"_"","userSalary"_"","userBonus"_"","userDepart"_"","userRole"_"ROLE_COMMON","userGroup"_"GROUP_COMMON","userFunOpt"_"createRole"' org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:927) org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:822) javax.servlet.http.HttpServlet.service(HttpServlet.java:647) org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:796) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) root cause java.lang.IllegalArgumentException: Model has no value for '"userName"_"","userPasswd"_"","userSalary"_"","userBonus"_"","userDepart"_"","userRole"_"ROLE_COMMON","userGroup"_"GROUP_COMMON","userFunOpt"_"createRole"' org.springframework.util.Assert.notNull(Assert.java:112) org.springframework.web.servlet.view.RedirectView.replaceUriTemplateVariables(RedirectView.java:335) ...................... 请指教
请教: 从前台传过来时,没有问题,显然,和前台无关,这点可以判断 所以,有如下疑惑: 1、json串在new ModelAndView("redirect:/"+legalFile+".do?json="+json);报错, 于是,我采用json = json.replace(':','_'); 将所有的':'转换成'_' , 但是,依然报错:exception org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalArgumentException: Model has no value for '"userName"_"","userPasswd"_"","userSalary"_"","userBonus"_"","userDepart"_"","userRole"_"ROLE_COMMON","userGroup"_"GROUP_COMMON","userFunOpt"_"createRole"' org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:927) org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:822) javax.servlet.http.HttpServlet.service(HttpServlet.java:647) org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:796) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) root cause java.lang.IllegalArgumentException: Model has no value for '"userName"_"","userPasswd"_"","userSalary"_"","userBonus"_"","userDepart"_"","userRole"_"ROLE_COMMON","userGroup"_"GROUP_COMMON","userFunOpt"_"createRole"' org.springframework.util.Assert.notNull(Assert.java:112) org.springframework.web.servlet.view.RedirectView.replaceUriTemplateVariables(RedirectView.java:335) ...................... 请指教 之前那是我的猜测,经过测试,是大括号的原因,new ModelAndView("redirect:/"+legalFile+".do?json="+json);在参数中存在{},spring会报错。所以啊,楼主,我之前讲的是错误的。我自己测试过,日要不存在成对的大括号{}就可以,所以这里你只要将json中的大括号去掉就行了
请教: 从前台传过来时,没有问题,显然,和前台无关,这点可以判断 所以,有如下疑惑: 1、json串在new ModelAndView("redirect:/"+legalFile+".do?json="+json);报错, 于是,我采用json = json.replace(':','_'); 将所有的':'转换成'_' , 但是,依然报错:exception org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalArgumentException: Model has no value for '"userName"_"","userPasswd"_"","userSalary"_"","userBonus"_"","userDepart"_"","userRole"_"ROLE_COMMON","userGroup"_"GROUP_COMMON","userFunOpt"_"createRole"' org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:927) org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:822) javax.servlet.http.HttpServlet.service(HttpServlet.java:647) org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:796) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) root cause java.lang.IllegalArgumentException: Model has no value for '"userName"_"","userPasswd"_"","userSalary"_"","userBonus"_"","userDepart"_"","userRole"_"ROLE_COMMON","userGroup"_"GROUP_COMMON","userFunOpt"_"createRole"' org.springframework.util.Assert.notNull(Assert.java:112) org.springframework.web.servlet.view.RedirectView.replaceUriTemplateVariables(RedirectView.java:335) ...................... 请指教 之前那是我的猜测,经过测试,是大括号的原因,new ModelAndView("redirect:/"+legalFile+".do?json="+json);在参数中存在{},spring会报错。所以啊,楼主,我之前讲的是错误的。我自己测试过,日要不存在成对的大括号{}就可以,所以这里你只要将json中的大括号去掉就行了谢谢,试了试,有效也!!!
modelMap.addAttribute("COPYRIGHT_INFO", SessionUtils.getInstance(request).getSysConfigItem(JQuickConstant.COPYRIGHT_INFO));
return new ModelAndView("jquick/login/loginpage_"+loginPage,modelMap);
new ModelAndView("redirect:/"+legalFile+".do?json="+json);通过这一句可以看出,spring的ModelAndView在解析参数的时候会将“:”前后的字符串作为解析的变量,而你的json字符串中的“:”前后的字符串根本就不符合解析规则,所以报错。
解决方法:将json字符串中的“:”替换为别的符号,接受的时候再将它替换为“:”
请教:
从前台传过来时,没有问题,显然,和前台无关,这点可以判断
所以,有如下疑惑:
1、json串在new ModelAndView("redirect:/"+legalFile+".do?json="+json);报错,
于是,我采用json = json.replace(':','_');
将所有的':'转换成'_' ,
但是,依然报错:exception
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalArgumentException: Model has no value for '"userName"_"","userPasswd"_"","userSalary"_"","userBonus"_"","userDepart"_"","userRole"_"ROLE_COMMON","userGroup"_"GROUP_COMMON","userFunOpt"_"createRole"'
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:927)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:822)
javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:796)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
root cause
java.lang.IllegalArgumentException: Model has no value for '"userName"_"","userPasswd"_"","userSalary"_"","userBonus"_"","userDepart"_"","userRole"_"ROLE_COMMON","userGroup"_"GROUP_COMMON","userFunOpt"_"createRole"'
org.springframework.util.Assert.notNull(Assert.java:112)
org.springframework.web.servlet.view.RedirectView.replaceUriTemplateVariables(RedirectView.java:335)
......................
请指教
请教:
从前台传过来时,没有问题,显然,和前台无关,这点可以判断
所以,有如下疑惑:
1、json串在new ModelAndView("redirect:/"+legalFile+".do?json="+json);报错,
于是,我采用json = json.replace(':','_');
将所有的':'转换成'_' ,
但是,依然报错:exception
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalArgumentException: Model has no value for '"userName"_"","userPasswd"_"","userSalary"_"","userBonus"_"","userDepart"_"","userRole"_"ROLE_COMMON","userGroup"_"GROUP_COMMON","userFunOpt"_"createRole"'
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:927)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:822)
javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:796)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
root cause
java.lang.IllegalArgumentException: Model has no value for '"userName"_"","userPasswd"_"","userSalary"_"","userBonus"_"","userDepart"_"","userRole"_"ROLE_COMMON","userGroup"_"GROUP_COMMON","userFunOpt"_"createRole"'
org.springframework.util.Assert.notNull(Assert.java:112)
org.springframework.web.servlet.view.RedirectView.replaceUriTemplateVariables(RedirectView.java:335)
......................
请指教
之前那是我的猜测,经过测试,是大括号的原因,new ModelAndView("redirect:/"+legalFile+".do?json="+json);在参数中存在{},spring会报错。所以啊,楼主,我之前讲的是错误的。我自己测试过,日要不存在成对的大括号{}就可以,所以这里你只要将json中的大括号去掉就行了
请教:
从前台传过来时,没有问题,显然,和前台无关,这点可以判断
所以,有如下疑惑:
1、json串在new ModelAndView("redirect:/"+legalFile+".do?json="+json);报错,
于是,我采用json = json.replace(':','_');
将所有的':'转换成'_' ,
但是,依然报错:exception
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalArgumentException: Model has no value for '"userName"_"","userPasswd"_"","userSalary"_"","userBonus"_"","userDepart"_"","userRole"_"ROLE_COMMON","userGroup"_"GROUP_COMMON","userFunOpt"_"createRole"'
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:927)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:822)
javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:796)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
root cause
java.lang.IllegalArgumentException: Model has no value for '"userName"_"","userPasswd"_"","userSalary"_"","userBonus"_"","userDepart"_"","userRole"_"ROLE_COMMON","userGroup"_"GROUP_COMMON","userFunOpt"_"createRole"'
org.springframework.util.Assert.notNull(Assert.java:112)
org.springframework.web.servlet.view.RedirectView.replaceUriTemplateVariables(RedirectView.java:335)
......................
请指教
之前那是我的猜测,经过测试,是大括号的原因,new ModelAndView("redirect:/"+legalFile+".do?json="+json);在参数中存在{},spring会报错。所以啊,楼主,我之前讲的是错误的。我自己测试过,日要不存在成对的大括号{}就可以,所以这里你只要将json中的大括号去掉就行了谢谢,试了试,有效也!!!