如何将WEB-INF下的jsp页面插入在frameset中
在做毕业设计中,我是将jsp页面全部放入WEB-INF文件夹中。但是这样就遇到了一个问题。WEB-INF是受保护文件夹,我们不能通过常规的方法来访问里面的资源,也就是说如果我们在在frameset中写如下代码是访问不了的:
1 <frame src="/WEB-INF/page/admin_righr.jsp" name="main" marginwidth="0" marginheight="0" frameborder="0" scrolling="auto"/>
上面的代码是会报404错误的。
那么该如何解决这个问题呢?这里有三种方法可以解决:
一、利用Struts框架
1、我们在frame中配置src时,将他指向一个action。
1 <frame src="${pageContext.request.contextPath }/adminIndex/toAdmin_toAdminRight.action" name="main" marginwidth="0" marginheight="0" frameborder="0" scrolling="auto"/>
2、在该处理方法中返回一个字符串。然后在struts.xml中处理结果时指向需要加载的jsp文件即可。
1 /** 2 * admin_right.jsp 3 */ 4 public String toAdminRight(){ 5 return "adminRight"; 6 }
1 <package name="adminIndex" namespace="/adminIndex" extends="struts-default"> 2 <action name="toAdmin_*" class="adminIndexAction" method="{1}"> 3 <result name="adminRight">/WEB-INF/page/backstage/admin_right.jsp</result> 4 </action> 5 </package>
二、使用Servlet
1 <servlet> 2 <servlet-name>servletName</servlet-name> 3 <jsp-file>/WEB-INF/admin_right.jsp> 4 </servlet> 5 <servlet-mapping> 6 <servlet-name>servletName</servlet-name> 7 <url-pattern>/.do</url-pattern> 8 <servlet-mapping>
然后路劲指向该servlet即可。
三、用<jsp:forward page="WEB-INF/XXX">就直接可以访问web-inf目录下的jsp。
-
作者:chenssy。一个专注于【死磕 Java】系列创作的男人
出处:https://www.cnblogs.com/chenssy/archive/2013/03/26/2982347.html
作者个人网站:https://www.cmsblogs.com/。专注于 Java 优质系列文章分享,提供一站式 Java 学习资料
目前死磕系列包括:
1. 【死磕 Java 并发】:https://www.cmsblogs.com/category/1391296887813967872(已完成)
2.【死磕 Spring 之 IOC】:https://www.cmsblogs.com/category/1391374860344758272(已完成)
3.【死磕 Redis】:https://www.cmsblogs.com/category/1391389927996002304(已完成)
4.【死磕 Java 基础】:https://www.cmsblogs.com/category/1411518540095295488
5.【死磕 NIO】:https://www.cmsblogs.com/article/1435620402348036096
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。