我创建了一个返回ModelAndView的方法,以显示带有jsp“resourcelist”的列表。它执行方法showResourceList()但在返回之后,我在/WEB-INF/views/resources.jsp上收到404错误。 “找不到所请求的资源”。
但在我的观点中,没有名为resources.jsp的jsp。我不明白为什么它试图找到这个不存在的视图。正如您在我的控制器代码中看到的那样,我正在尝试转发到resourcelist.jsp而不是转发到resources.jsp。
我还有很多其他控制器返回一个可以正常工作的ModelAndView。
任何人都可以帮助我吗?
以下是代码:
package learningresourcefinder.controller;
import java.util.List;
import learningresourcefinder.model.Resource;
import learningresourcefinder.repository.ResourceRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.portlet.ModelAndView;
@Controller
public class RessourceListController extends BaseController<Resource>{
@Autowired ResourceRepository resourcerepository;
@RequestMapping("/resources")
public ModelAndView showResourceList () {
List<Resource> list=resourcerepository.findAllRessourceOrderByTitle();
return new ModelAndView("resourcelist", "resourceList", list);
}
}
非常感谢! 塞巴斯蒂安。
答案 0 :(得分:0)
您是否尝试在@RequestMapping("/resources")
注释后添加@Controller
,然后将String
正确的映射/视图作为showResourceList()
方法中的返回值。所以,例如:
@Controller
@RequestMapping("/resources")
public class RessourceListController extends BaseController<Resource>{
...
@RequestMapping(method = RequestMethod.GET)
public String showResourcesList(ModelMap model) {
// retrieve the list instance
model.addAttribute("resourcesList", list);
return "/resources/resourceslist";
}
...
}
另外,在Spring配置中如何配置viewResolver
bean?
答案 1 :(得分:0)
我和另一个班级相比,我看到我做错了导入。我导入了“springframework.web。 servlet .Modelandview”而不是导入“springframework.web。 portlet .Modelandview”。 遗憾...