我正在使用spring mvc 3.0.6。这是我的代码:
@Controller
@RequestMapping(value="/staff")
public class StaffController extends BaseController {
@RequestMapping(method=RequestMethod.GET)
public ModelAndView goStaffIndex(Model model) throws Exception{
model.addAttribute("staff", new Staff());
return new ModelAndView("staff/staffIndex","model",model);
}
@RequestMapping(value="/newStaff",method=RequestMethod.GET)
public String addStaff(Model model) throws Exception{
model.addAttribute("staff", new Staff());
return "staff/newStaff";
//return new ModelAndView("staff/newStaff","model",model);
}
}
第一种方法正常工作。
问题,当我发送请求时:http:// localhost:8080 / mvc / staff / newStaff.do。调度程序发送请求addStaff()方法,也没关系。回报也没关系。因为调试信息告诉我没事。
消息:
20:16:30,648 INFO [stdout] DEBUG [org.springframework.web.servlet.view.JstlView] - 转发到InternalResourceView员工的资源[WEB-INF / views / staff / newStaff.jsp] / NEWSTAFF'
20:16:30,648 INFO [stdout] DEBUG [org.springframework.web.servlet.DispatcherServlet] - 已成功完成请求
然而,页面出现了404错误。但调试控制台没有任何错误或警告。
当我删除类@RequestMapping并更改一些代码时,例如:
public class StaffController extends BaseController {
@RequestMapping(value="/staff",method=RequestMethod.GET)
public ModelAndView goStaffIndex(Model model) throws Exception{
model.addAttribute("staff", new Staff());
return new ModelAndView("staff/staffIndex","model",model);
}
@RequestMapping(value="/newStaff",method=RequestMethod.GET)
public String addStaff(Model model) throws Exception{
model.addAttribute("staff", new Staff());
return "staff/newStaff";
//return new ModelAndView("staff/newStaff","model",model);
}
}
之后,我发送新请求(只有一个级别的URL):http:// localhost:8080 / mvc / newStaff.do。工作得很好!!!! 任何决议或我错误的东西?
我正在使用jbossAS 7.0
答案 0 :(得分:0)
我会在工作人员面前添加一个/来获取应用程序上下文根
试试这个:
@Controller
@RequestMapping(value="/staff**")
public class StaffController extends BaseController {
@RequestMapping(method=RequestMethod.GET)
public ModelAndView goStaffIndex(Model model) throws Exception{
model.addAttribute("staff", new Staff());
return new ModelAndView("staff/staffIndex","model",model);
}
@RequestMapping(value="/staff/newStaff**",method=RequestMethod.GET)
public String addStaff(Model model) throws Exception{
model.addAttribute("staff", new Staff());
return "/staff/newStaff";
}
}
答案 1 :(得分:0)
克里斯蒂亚诺的答案几乎是正确的。唯一留下的是**之前的另一个酒吧:
@Controller
@RequestMapping(value="/staff/**")
public class StaffController extends BaseController {
...