`
2277259257
  • 浏览: 515246 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

访问页面设置技巧

阅读更多

 页面访问:

 

部署在WebRoot下的页面,可以在地址栏中直接指定页面文件访问

将页面部署到WebRoot/WEB-INF文件夹下可防止用户绕过servlet直接访问jsp等页面文件

TomCat 服务器下的WEB-INF文件夹是一个非常安全的文件,在页面中不能直接访问其中的文件,必须通过web.xml文件对要访问的文件进行相应映射才能访问

 

 


在有Struts部署的Java EE环境中,我们一般把jsp页面写在WebRoot\WEB-INF\content 目录下,这样使得jsp页面一定需要struts的控制转发才可访问,提高页面安全性。

但是今天在jsp页面中应用WebRoot目录中的css,js文件发现十分困难,先看看我的文件结构:

目标是在index.jsp中访问default.css。

defautl.css是在index.jsp目录的父目录的父目录的CSS目录下。所以我这样写:

ps:空格为故意添加,不知为何会自动变成博客园的网址

        <link href="../ ../css/default.css" rel="stylesheet" type="text/css"/>
       <link href="../ ../css/uploadify.css" rel="stylesheet" type="text/css"/>

在Eclipes中也出现超链接提示,说明目录正确,但是结果失败。

查询资料后,在百度百科中看到:

http://baike.baidu.com/view/1745468.htm

 TomCat 服务器下的WEB-INF文件夹是一个非常安全的文件,在页面中不能直接访问其中的文件,必须通过web.xml文件对要访问的文件进行相应映射才能访问。

从上面的实验可以看出,不但是直接访问,使用" ../ ../ "之类的间接访问也不能成功

在此多方查询资料之后,尝试使用如下方法访问:

1         <!-- 输出为项目根目录,即WebRoot -->
2         <%String path = request.getContextPath(); %>
3         <link href="${path}/css/default.css" rel="stylesheet" type="text/css"/>
4         <link href="${path}/css/uploadify.css" rel="stylesheet" type="text/css"/>

原理很简单,变量path值为项目根目录,而css就是此目录的子目录,自然可以访问。

可惜结果还是错,思考之,el表达式的${}是以page,request,session,application的顺序寻找匹配的项,而path并不在这个范围之内,也许在java脚本中直接定义的对象是局部作用域,而不是page作用域?可惜百度之后难以找到相关资料,不过结论应该是没错的。

既然EL表达式无法取出,那么java脚本应该可以达到目的吧?尝试如下:

1         <%String path = request.getContextPath(); %>
2         <link href="<%=path %>/css/default.css" rel="stylesheet" type="text/css"/>
3         <link href="<%=path %>/css/uploadify.css" rel="stylesheet" type="text/css"/>

果不其然,页面成功读出了css文件中的样式,达到目的。不过此页面中存在java脚本,不够规范,查询资料后,用以下纯EL表达式实现:

1         <c:set value="${pageContext.request.contextPath}" var="path" scope="page"/>
2         <link href="${path}/css/default.css" rel="stylesheet" type="text/css"/>
3         <link href="${path}/css/uploadify.css" rel="stylesheet" type="text/css"/>

先将ContextPath放如page中,再使用el表达式取出,问题得以解决。

 

在查询资料的过程中,发现如下问题:

WEB-INF目录下加载CSS和JS问题?????

http://topic.csdn.net/u/20100420/14/c4efb68c-ca03-46b9-8277-126bd1290ebe.html 

此问题中,CSS和JS也在WEB-INF下,多方试验后我还是没能解决,望高手解答。

 

参考资料:

百度百科

http://baike.baidu.com/view/1745468.htm

EL表达式 (详解)

http://blog.csdn.net/qwerasdf123/article/details/4189889

ITEYE问答

http://www.iteye.com/problems/37087

百度知道

http://zhidao.baidu.com/question/277894936.html

分享到:
评论

相关推荐

    菜单设置技巧

    在文中提到的“菜单设置技巧”主要指对个人常用网站和个人资料进行快速访问的设置技巧。这些技巧可以帮助用户更快地找到所需的信息或服务。例如: - **关注好友动态**:通过访问CSDN个人空间可以及时了解好友的最新...

    ASP.NET跨页面传值技巧总结.

    `b.aspx`可以直接访问`a.aspx`的`Name`属性,无需通过额外的传递机制。 这些方法各有优缺点,应根据实际需求选择。QueryString简单但不安全,Application全局但要注意锁的使用,Session用户私有但可能导致内存压力...

    WiseIE浏览器设置技巧.docx

    ### WiseIE浏览器设置技巧详解 #### 一、个性化设置——改变网页背景与字体样式 **1.1 改变网页背景** WiseIE浏览器提供了一种便捷的方式来改变浏览时的网页背景,使得用户可以根据个人喜好定制浏览体验。具体...

    Word文档横向设置的技巧.docx

    2. **访问“页面设置”对话框**:有两种方法可以进入页面设置。一是通过菜单栏,点击顶部的“文件”选项,然后在下拉菜单中选择“页面设置”。二是使用快捷键,按下`Ctrl + P`,这会打开“打印”对话框,然后点击...

    个人资料页面设置

    综上所述,Android个人资料页面设置涉及到UI设计、数据存储、网络通信、图片处理、权限管理和兼容性等多个方面。开发者需要熟练掌握Android的相关技术,并根据具体需求进行灵活应用,才能打造出用户友好的个人资料...

    ASP.NET跨页面传值技巧

    以下将详细介绍几种常用的ASP.NET跨页面传值技巧。 1. **使用QueryString变量**: QueryString是通过URL参数来传递数据的方式。在a.aspx页面上,可以将Label1的文本内容添加到URL中,然后通过Response.Redirect...

    ASPNET跨页面传值技巧

    在源页面设置Cookie,如`HttpCookie cookie = new HttpCookie("MyCookie"); cookie.Value = "someValue"; Response.Cookies.Add(cookie);`,然后在目标页面通过Request.Cookies["MyCookie"]获取。 6. Application或...

    Word打印设置技巧6则.docx

    ### Word打印设置技巧详解 #### 一、逆页序打印:高效整理打印顺序 在处理大量文档时,Word默认是从第一页打印到最后一页,这种方式可能导致打印完毕后文档页码顺序颠倒,即最后一页出现在最上面,首页反而在底部...

    做站的SEO技巧设置 搜索引擎页面优化扫盲

    ### SEO技巧与搜索引擎页面优化详解 #### 一、理解SEO的重要性 SEO(Search Engine Optimization),即搜索引擎优化,是指通过各种技术手段对网站进行优化,使其在搜索引擎中的排名得到提升,从而增加网站流量的一...

    路由器设置技巧

    ### 路由器设置技巧详解 #### 阿尔法V6路由器基本特性与配置方法 阿尔法V6路由器是一款高性能的家庭与小型办公环境下的网络设备,它提供了丰富的网络功能和服务,使得用户能够轻松地管理和享受互联网带来的便利。...

    微机常用小技巧

    8. **打印设置**:在需要打印文档时,提前预览打印效果,调整页面设置,如页边距、纸张大小,可以避免浪费纸张和墨粉。 9. **系统优化**:通过关闭不必要的启动项,禁用视觉效果,可以提升电脑的启动速度和运行效率...

    Win8系统通知功能与设置方法技巧.docx

    在Windows 8操作系统中,通知功能是一项重要的特性,它允许用户实时获取系统和应用程序的最新信息,如新邮件提醒、社交媒体...无论是想要优化工作流程,还是提升个人使用体验,了解并掌握这些设置技巧都是十分必要的。

    Word、Excel、PPT使用技巧与实战方法大全(2013完整版).pdf

    1. **页面设置**:可以通过设计选项卡下的页面设置功能,调整PPT的页面方向、大小和版式。 2. **快速编辑**:利用快速访问工具栏可以自定义常用命令,提高编辑效率。 3. **批量打印**:PowerPoint提供了打印整个演示...

    TCPIP高效编程:改善网络程序的44个技巧 PDF中文版带书签-目录

    说明--TCPIP高效编程:改善网络程序...4.11 技巧43:访问RFC编辑者的页面 243 4.12 技巧44:经常访问新闻组 244 附录A 各种UNIX代码 247 附录B 各种Windows代码 250 参考书目 253 索引 257 ======================

    网络工程师30个经典的电脑使用技巧

    NTFS文件系统提供了强大的权限管理功能,用户可以根据需求灵活地设置不同文件或文件夹的访问权限。 #### 技巧24:获取网页最后修改时间 在地址栏输入`javescript:alert(document.lastModified)`,可以弹出一个...

    40种网页常用小技巧

    **解析:** 当用户直接访问非框架页面时,这段代码会将用户重定向到包含该页面的框架页。 ### 9. 禁止嵌套框架 **技巧:** 使用 JavaScript 来检测当前页面是否被嵌套在其他框架中,并将自身提升为顶层窗口。 **...

Global site tag (gtag.js) - Google Analytics