我使用了spring框架,下面是url到控制器的映射。
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/controller.web">webController</prop>
<prop key="/robots.txt">robotsController</prop>
</props>
</property>
</bean>当我点击controller.web时,控制会到达web控制器,但当我点击robots.txt时,控制不会转移到robotsController,相反,它会尝试找出资源,如果我从上下文目录中移除robots.txt,它会显示资源未找到。
如果我把robots.txt改成robots.web,它工作得很好,这意味着robots.txt的名字有点可疑,你有什么想法吗?
发布于 2010-10-01 19:11:14
我猜您的DispatcherServlet被映射为<url-pattern>*.web</url-pattern>,因此它只处理对*.web的请求。
如果您希望DispatcherServlet处理具有不同扩展名的请求,您有以下几种选择:
url-pattern添加到<servlet-mapping>*.web *.txtDispatcherServlet映射为<url-pattern>/</url-pattern>的所有请求。请注意,这种方法需要一些工作来提供静态内容,请参见here.https://stackoverflow.com/questions/3837317
复制相似问题