Java Spring MVC和错误400:SRVE0295E
我对简单的MVC应用程序有问题Java Spring MVC和错误400:SRVE0295E,java,spring,spring-mvc,Java,Spring,Spring Mvc,我对简单的MVC应用程序有问题 dayoff.html <div id="dayoff_operations" class="big_box_1"> <form:form modelAttribute="dayOff" enctype="multipart/form-data" action="/dayoff.html" > <div style="width: 50%; float: left; margin-top: 0px ">
dayoff.html
<div id="dayoff_operations" class="big_box_1">
<form:form modelAttribute="dayOff" enctype="multipart/form-data" action="/dayoff.html" >
<div style="width: 50%; float: left; margin-top: 0px ">
<form:label path="forDate" ><spring:message code="dayoff.fordate.label"/></form:label>
<form:input path="ax_forDate" id="datepicker" style="width:65px" readonly="readonly"/>
</div>
<div style="width: 50%; float: right; margin-top: 0px ">
<form:label path="toDate" ><spring:message code="dayoff.todate.label"/></form:label>
<form:input path="ax_toDate" id="datepicker2" style="width:65px" readonly="readonly" />
</div>
<div style="float: left">
<form:select cssClass="more" path="dayofftype" items="${dayoffTypes.list}" itemLabel="label" itemValue="value" htmlEscape="false" cssErrorClass="errorsField"/>
<form:errors path="dayofftype" cssClass="errors"/>
</div>
<input type="submit" name="add" value="Add"/>
</form:form>
dayoff.html
这是我的控制器:
@Controller
@RequestMapping("/dayoff")
@SessionAttributes(types = {DayOff.class})
public class DaysOffController {
private Validator validator;
@Autowired
private ReloadableResourceBundleMessageSource messages;
@ModelAttribute("dayoffTypes")
public Map<String, Object> populateDayoffTypes(Locale locale) {
return Utils.createComboMap(DayoffType.values(), messages, locale);
}
@RequestMapping(method = RequestMethod.GET)
public String setupForm(Model model) {
model.addAttribute("dayOff", new DayOff());
model.addAttribute("cur_period",SessionManager.getCurrentPeriod());
return "dayoff";
}
@RequestMapping(method = RequestMethod.POST, params = "add")
public String addNewHoliday(@ModelAttribute DayOff dayOff, BindingResult result, ModelMap model) {
System.out.println("AAA");
return "/dayoff";
}
@控制器
@请求映射(“/dayoff”)
@SessionAttributes(类型={DayOff.class})
公共类daysofc控制器{
私人验证器;
@自动连线
私有可重新加载的ResourceBundleMessageSource消息;
@ModelAttribute(“dayoffTypes”)
公共地图填充日期类型(区域设置){
返回Utils.createComboMap(DayoffType.values(),消息,区域设置);
}
@RequestMapping(method=RequestMethod.GET)
公共字符串设置窗体(模型){
addAttribute(“dayOff”,newdayoff());
addAttribute(“cur_period”,SessionManager.getCurrentPeriod());
返回“休假”;
}
@RequestMapping(method=RequestMethod.POST,params=“add”)
公共字符串addNewHoliday(@modeldattribute DayOff DayOff,BindingResult,ModelMap model){
系统输出打印项次(“AAA”);
返回“/休假”;
}
当我单击添加按钮错误400:SRVE0295E:错误报告:400出现时,服务器控制台上没有任何信息。
我假设它与setupForm()相关方法,该方法正在显示表单并将其压碎以供将来提交。您能指导我吗?setupForm和addNewHoliday的返回语句是不同的。我假定您希望从这两者返回相同的视图名称。您可以看到表单以便提交它,我假定addNewHoliday返回值为“/dayoff”实际上应该是“dayoff”setupForm和addNewHoliday的返回语句不同。我假定您希望从这两个返回相同的视图名称。正如您可以看到表单以便提交它一样,我假设“/dayoff”的addNewHoliday返回值实际上应该是“dayoff”错误400:SRVE0295E在MVC无法用HTML表单中的值填充
@ModelAttribute表单时也会发生
例如:
- 类
Form
具有基元属性int-someCount
- 您的HTML表单有
为该基本属性赋值
- 用户为此
您不应该使用诸如int
、boolean
、float
等基本类型。错误400:当MVC无法用HTML表单中的值填充@modeldattribute表单
时,也会发生SRVE0295E
例如:
- 类
Form
具有基元属性int-someCount
- 您的HTML表单有
为该基本属性赋值
- 用户为此
您不应该使用诸如int
、boolean
、float
等基本类型。您的/dayoff.html
操作正确吗?您是否将*.html
映射到控制器方法?您可能还想使用方法=“post”
以确保您使用了正确的控制器方法。可以帮助!!!是的,我的DispatcherServlet映射了*.html
文件。并且method=“post”
不是必需的,因为在我的html源文件表单中已声明为使用method=“post”
。在服务器重新启动几次之后,我的代码开始工作。实际上没有任何更改。声明了触发post操作的输入:
,控制器配置为:@controller@RequestMapping(/dayoff”)@SessionAttributes(type={dayoff.class})公共类DaysOffController{…}
和响应名为add
的操作帖子的方法声明为:@RequestMapping(method=RequestMethod.POST,params=“add”)公共字符串addNewHoliday(@ModelAttribute DayOff DayOff,BindingResult,ModelMap model){..}
你的/dayoff.html
行为正确吗?你是否将*.html
映射到你的控制器方法?你可能还想使用method=“post”
确保你点击了正确的控制器方法。可以帮助!!!是的,我的DispatcherServlet映射*.html
文件。和method=“post”
不是必需的,因为在我的html源文件表单中已声明为使用method=“post”
。在几次服务器重新启动后,我的代码开始工作。实际上没有任何更改。触发post操作的输入声明为:
,控制器配置为:@controller@RequestMapping(/dayoff”)@SessionAttributes(类型={DayOff.class})公共类daysoffc控制器{…}
和响应名为add
的操作帖子的方法声明为:@RequestMapping(method=RequestMethod.POST,params=“add”)公共字符串addNewHoliday(@modeldattribute DayOff,bindingsresult,ModelMap model){..}
我有一个类似的错误,因为我发送的RequestParam无效。在IE中失败,但在Chrome中没有。我有一个类似的错误,因为我发送的RequestParam无效。在IE中失败,但在Chrome中没有。