栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

在servlet程序中使用getRequestDispatcher方法跳转到jsp页面失败解决方法

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在servlet程序中使用getRequestDispatcher方法跳转到jsp页面失败解决方法

文章目录
  • 前言
  • 一、Web中的相对路径与绝对路径,web中/斜杠的不同含义
    • 1.Web中的相对路径与绝对路径
    • 2.Web中/斜杠的不同意义
  • 二、问题解决方法
    • 问题出现的几种情况
  • 总结


前言

在servlet程序中使用getRequestDispatcher方法跳转到jsp页面时报错,首先我们要了解一下服务器和浏览器之间解析的路径差别与不同含义


一、Web中的相对路径与绝对路径,web中/斜杠的不同含义 1.Web中的相对路径与绝对路径

在JavaWeb中路径分为相对路径与绝对路径

相对路径是:

.   一个点表示当前目录
. . 两个点表示上一级目录
资源名 表示当前目录/资源名

绝对路径是:

http://ip:port/工程路径/资源路径

在实际开发中都使用绝对路径或者base+相对路径

2.Web中/斜杠的不同意义

在web中/斜杠是绝对路径
/斜杠如果被浏览器解析得到的地址是:http://ip:port/

例如斜杠

/斜杠如果被服务器解析得到的地址是http://ip:port/工程路径

例如1、/servlet1
2、servletContext.getRealPath(“/”);
3、request.getRequestDispatcher(“/”);

特殊情况: response.sendRediect(“/”); 把斜杠发送给浏览器解析。得到 http://ip:port

二、问题解决方法 问题出现的几种情况

要注意的是我们必须使用绝对路径,不能使用相对路径,servlet.java是在src目录下,我这里将Java目录设置为我的源码目录,jsp是在webapp目录下,彼此不存在相对关系;

我目的是从Action.java这个servlet程序跳转到info.jsp文件中去,我一开始是这样设置的路径

于是乎出现了这这种报错,为什么呢?getRequestDispatcher方法它是由Tomcat服务器解析,这个时候解析出来的路径明显是去不了test目录下的,于是乎我把它改成了. ./info.jsp

这个时候运行服务器就变成了这个

这个说明文件已经找到了,但是服务器里面有问题,这两个文件不存在相对关系啊,我们使用绝对路径试试,

运行结果:
可以了!

总结

向这个作者学习https://blog.csdn.net/Java_stud/article/details/80551681
好好学习天天向上!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/821153.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号