【发布时间】:2017-03-04 19:34:57
【问题描述】:
我对 servlet 映射很困惑。据我了解
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
是不是所有的 xx.htm 都会进入这个 servlet。
我访问这 2 个网页没有问题(能够检索 css 和 js)
http://localhost:8080/smartcoursesystem/university.htm
http://localhost:8080/smartcoursesystem/home.htm
问题是当我走这条路时
http://localhost:8080/smartcoursesystem/university/edit.htm
在此页面上,我的所有资源(css 和 js)都丢失了。有什么问题?
我的调度器 servlet
<bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping"/>
<context:component-scan base-package="controller"/>
<mvc:annotation-driven/>
<mvc:default-servlet-handler />
<mvc:resources location="/assets/" mapping="/assets/**"/>
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"/>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver"
p:prefix="/WEB-INF/jsp/"
p:suffix=".jsp" />
Web.xml
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>redirect.jsp</welcome-file>
</welcome-file-list>
控制器
@Controller
@RequestMapping(value="/university")
public class universityController {
public static String entity_name = "University";
@RequestMapping()
public String getAll(Model m){
universityModel model = new universityModel();
univCrsModel uc = new univCrsModel();
m.addAttribute("univList", model.getAll());
m.addAttribute("entity", entity_name);
m.addAttribute("countUniv", model.countUniv());
return "all";
}
@RequestMapping(value="/edit", method=RequestMethod.GET)
public String edit(@RequestParam(value="id") int id, Model m){
universityModel model = new universityModel();
m.addAttribute("univ", model.getUniv(id));
m.addAttribute("entity", entity_name);
return "edit";
}
edit.jsp
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Edit University Profile</title>
</head>
<body>
<img src="/assets/images/icon-128x128.png" alt="smart course">
//more code
</body>
</htm>
我尝试将我的 url 模式更改为“/”,但没有帮助。事实上,将 url-pattern 更改为“/”会使我的欢迎文件无法正常工作。
【问题讨论】:
标签: jsp spring-mvc model-view-controller netbeans