如何在URL中不指定.html、.json的情况下配置web.xml来服务任何请求
How to configure web.xml to serve any request without specifying .html, .json in the URL
我的Spring应用程序中有一个javaScript函数,用于服务REST GET调用。
function populateCombo(){
$.ajax({
url: "activities.json",
type: "get",
dataType: "html"
}).done(function(data) {
console.log("data from AJAX : "+data);
//$('#activities').html(html);
});
}
我已经配置了我的web.xml
来满足这个请求。
<servlet-mapping>
<servlet-name>fitTrackerServlet</servlet-name>
<url-pattern>*.json</url-pattern>
</servlet-mapping>
但是,是否可以在不必将ajax中的url调用为activities.json
的情况下实现同样的结果即类似这样的东西,
function populateCombo(){
$.ajax({
url: "activities",
type: "get",
dataType: "html"
}).done(function(data) {
console.log("data from AJAX : "+data);
//$('#activities').html(html);
});
}
我的web.xml是
<servlet>
<servlet-name>fitTrackerServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/config/servlet-config.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>fitTrackerServlet</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>fitTrackerServlet</servlet-name>
<url-pattern>/pdfs/**</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>fitTrackerServlet</servlet-name>
<url-pattern>*.json</url-pattern>
</servlet-mapping>
注意:我试图通过删除所有并添加以下来实现这一点
<servlet-mapping>
<servlet-name>fitTrackerServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
但是它显示了我的javaScript文件导入的错误
例如:WARNING: No mapping found for HTTP request with URI [/FitnessTracker/resources/javaScript/jquery/jquery.js] in DispatcherServlet with name 'fitTrackerServlet'
在jsp文件中,它被导入为
<script type="text/javascript" src="/FitnessTracker/resources/javaScript/jquery/jquery.js"></script>
您关于使用的假设
<servlet-mapping>
<servlet-name>fitTrackerServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
是正确的。但是Spring不知道jquery.js是一个静态资源,它试图为请求的URL找到一个合适的RequestMapping。使用此标签
<mvc:resources mapping="/js/**" location="/js/"/>
在Spring应用程序上下文中标记到静态资源的所有路径。
相关文章:
- web配置http到https重定向异常
- 在单独的js文件中访问web配置
- 如何在URL中不指定.html、.json的情况下配置web.xml来服务任何请求
- 如何在Yeoman Web应用程序中配置eslint
- 通过web界面修改自定义配置文件的最佳方式
- 在java web应用程序中存储UI配置的位置,并从jsp页面读写配置文件
- AngularJS中的$resource web服务连接配置的确切含义
- 为没有flash的web商店设计一个拖放web图像配置器
- 调用web配置值在javascript SRC谷歌地图api
- 使用Web.在Javascript/HTML中配置应用数据
- 如何从web读取会话超时值.在JS文件中使用javascript配置
- 如何使用来自web的值更新JavaScript.配置文件.NET MVC4 Razor项目
- 为Restful Web Service构建JSON配置的正确方法
- 需要帮助为 Web 应用配置 JavaScript 和 JSON 支持的本地化
- 通过第三方web应用程序'用户帐户配置文件实现安全的社交媒体访问
- 正确配置Eclipse用于非web JavaScript开发
- 配置log4javascript为struts web应用程序
- 使用第三方web应用程序的facebook graph API向facebook用户配置文件添加事件
- Sencha Touch &;ExtJS配置文件的桌面和移动在一个web项目/vhost
- 读取Web配置设置.在ASP中配置.. Net项目使用Javascript文件