如何解决struts2 jsp文件无法加载javascript
| 我有一个struts 2应用程序。版本2.2.3。我的问题是该应用程序无法加载javascript文件。我有一个jsp文件,其顶部具有以下内容<%@ taglib prefix=\"s\" uri=\"/struts-tags\" %>
<html>
<head>
<title>Ajax</title>
<script type=\"text/javascript\" src=\" <s:url value=\"/static/script/jquery/jquery-1.6.min.js\" includeParams=\"false\"/>\" ></script>
<script type=\"text/javascript\" src=\" <s:url value=\"/static/script/jquery/jquery-ui-1.8.12.custom.min.js\" includeParams=\"false\"/>\" ></script>
</head>
我的文件位于以下目录
struts2tutorial/static/script/jquery
在萤火虫中,我看到以下网址
<script src=\" /struts2tutorial/static/script/jquery/jquery-1.6.min.js\" type=\"text/javascript\">
如果我在浏览器上执行以下操作。我收到未找到的404文件。不知道我做错了什么
http://localhost:8010/struts2tutorial/static/script/jquery/jquery-1.6.min.js
解决方法
除非您对操作扩展进行了特殊配置以匹配所有内容,否则根本不需要/ static或
<s:url/>
东西。假设脚本目录在您的WAR文件/爆炸目录中,这就足够了:
<script type=\"text/javascript\" src=\"${pageContext.request.contextPath}/script/jquery/jquery-1.6.min.js\"></script>
,将javascript文件放在struts2tutorial / static / script / jquery中不一定意味着这是将应用程序部署到服务器时使用的路径。检查该路径最终在服务器上被映射到的位置。
,尝试
http://localhost:8010/static/script/jquery/jquery-1.6.min.js
在地址栏和您的jsp中的以下代码
<script type=\"text/javascript\" src=\" <s:url value=\"static/script/jquery/jquery-1.6.min.js\" includeParams=\"false\"/>\" ></script>
,对我来说,问题出在我的web.xml中。
您必须在过滤器模式中添加\“ / struts / * \”,因为js文件不是真正的文件。我认为这是URL后面的struts动作,即使struts2-config-brower插件未检测到它也是如此。
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
<url-pattern>/struts/*</url-pattern>
</filter-mapping>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。