当前位置: 代码迷 >> Java Web开发 >> frameset 下子模块链接 WEB-INF/下的JSP页面解决方案
  详细解决方案

frameset 下子模块链接 WEB-INF/下的JSP页面解决方案

热度:954   发布时间:2016-04-16 21:40:27.0
frameset 下子模块链接 WEB-INF/下的JSP页面
各位好,初学servlet,遇如下问题,请各位前辈指点:
JSP代码
<frameset cols="25%,75%" framespacing="0" frameborder="no" border="0">
  <frame src="left.jsp?type=left" name="leftFrame" id="leftFrame" />
  <frame src="right.jsp?type=right" name="rightFrame" scrolling="No" noresize="noresize" id="rightFrame" />
</frameset>
 
web.xml中配置
<servlet>  
    <servlet-name>right</servlet-name>  
    <servlet-class>com.door.servlet.PageForwardServlet</servlet-class>  
</servlet>  
<servlet-mapping>  
    <servlet-name>right</servlet-name>  
    <url-pattern>/right</url-pattern>  
</servlet-mapping>   
<servlet>  
    <servlet-name>left</servlet-name>  
    <servlet-class>com.door.servlet.PageForwardServlet</servlet-class>  
</servlet>  
<servlet-mapping>  
    <servlet-name>left</servlet-name>  
    <url-pattern>/left</url-pattern>  
</servlet-mapping>  

com.door.servlet.PageForwardServlet中跳转代码
if(type.toString().equalsIgnoreCase("main")){
request.getRequestDispatcher("/WEB-INF/main.jsp").forward(request, response);
} else if (type.toString().equalsIgnoreCase("show")) {
request.getRequestDispatcher("/WEB-INF/show.jsp").forward(request, response);
} else if (type.toString().equalsIgnoreCase("left")) {
request.getRequestDispatcher("/WEB-INF/left.jsp");
} else if (type.toString().equalsIgnoreCase("right")) {
request.getRequestDispatcher("/WEB-INF/right.jsp");


现提示找不到指定的页面
HTTP Status 404 - /door/left.jsp

现请问: frameset 下子模块链接 WEB-INF/下的JSP页面 该如何修改,在不用框架的前提下,谢谢各位给出建议或指导!
------解决思路----------------------
引用:
Quote: 引用:

把frame的src属性改为: left/left.jsp?type=left 试下


改成了  
<frameset cols="25%,75%" framespacing="0" frameborder="no" border="0">
  <frame src="left/left.jsp?type=left" name="leftFrame" id="leftFrame">
  <frame src="right/right.jsp?type=left" name="rightFrame" scrolling="No" noresize="noresize" id="rightFrame" />
</frameset>

然后界面提示如下:

嗯, 应该改servlet mapping 的url-pattern 要么改为left.jsp, right.jsp,  这是用你最开始的代码试下.

如果src路径改成了我跟你说的样子, 就把url-pattern改为/left/*, /right/*.  
404就是请求没到你的servlet里面,一般而言都是src跟url-pattern没有对应上
  相关解决方案