项目在Eclipse下一切正常,但项目发布到服务器上时就报如下错误。并且会出现一个奇怪的现象,当报错的页面多次刷新时,页面偶尔也会正常显示。
二、报错页面提示内容
HTTP Status 404 – 未找到
Type Status Report
消息 /page/system/declare/innovate.jsp
描述 源服务器未能找到目标资源的表示或者是不愿公开一个已经存在的资源表示。
Apache Tomcat/7.0.103
三、一些常规检查
可按照网上一些介绍,检查页面是否放在tomcat的保护路径下。这样会提示“不愿公开一个已经存在的资源”,同时还需检查一下一些相关的设置。若一切配置和路径都正确,那么就按照以下步骤尝试着解决问题。
四、清除tomcat缓存
将tomcat\work\*.*下的完全删除即可,就这么简单。我这里的项目webapps、JDK、MYSQL、TOMCAT,是一起上传到独立的服务器。如果上传的tomcat中已经有了缓存,那么一起部署到新的环境时,原缓存就会提供给访问者。由于新环境下访问路径的不同,从而会造成按照“老缓存”提供服务。这样就会造成访问的页面无法找到,因此就会报以上所示错误。
总结:这实际上是不经意犯下的错误,清除发布服务器中的缓存,问题就解决了。
类型 状态报告
消息 请求的
资源
[/chapter06/IndexServlet]不可用
描述
源
服务器
未
能
找到
目标
资源
的表示或者是不愿公开一个已经存在的
资源
表示。
Apache Tomcat/9.0.37
问题原因,浏览器不能直接访问Java文件
问题的解决方法
1、提交表单时遇到此问题
<form name = reg action=/login method=post>
<meta charset=UTF-8>
账号:<input type=text name=usernam
404的错误都是
资源
路径错误,经过查找,发现是在SpringMVC配置文件中定义视图解析器时前缀路径没有以“/”开头:
<property name="prefix" value="WEB-INF/jsp/"/>
应该在WEB前加上“/”,如下:
<property name="prefix" value="/WEB-INF/jsp/"/>
这里涉及一个知识点:
访问地址以“/”开头与非“/”开头的区别,我们都知道文件
资源
路径都由参考路径+相对路径组成(非绝对路径的情况),在
HTTP
Status
404 –
未
找到
:
源
服务器
未
能
找到
目标
资源
的表示或者是不愿公开一个已经存在的
资源
表示。
先post个图:
再来聊一下我是怎么搞成这样的:
我自学Javaweb,看的是一本2012年出版的书。在学到servlet的时候,根据书上教程,在位置 \WebContent\WEB-INF目录下添加了一个web.xml文件,然后就搞成了这样。
想上网搜一下怎么回事?却找不到想要的答案...
今天初次使用tomcat的时候,用浏览器访问总是不成功。经过一番周折总算成功了,虽然这个知识点不是很难,但还是写篇博客,希望能帮助那些初学者。(注:笔者用的是:tomcat 7)
前提...
当我们向tomcat
服务器
发起请求时,出现如下的错误状态提示–404.这个问题在开发过程中可能会经常遇到,所以做一个归纳总结:
以下的内容适用于IDEA,使用其他编辑器的小伙伴们需要注意区别。
–> 访问的
资源
并不存在,仔细检查文件名与路径中的文件名是否一致,比如:hello.jsp写成了hallo.jsp。
–> 虚拟路径没有写对,可以在配置tomcat里查看虚拟路径名,一般请求路径中包含虚拟路径名(也可以不包含),例如:
http
://localhost:8080
如果连servlet都没有
找到
相应的路径,那就确认路径的地址填写是否正确。其发出的真正地址其实应该是localhost:8080/项目名称/具体请求
问题在于:action="/user/first.do"前的/应该去掉
<p>第一个springmvc项目</p>
<p><a href="/user/first.do">发起some.do的get请求</a></p>
全网多种方法分析解决
HTTP
Status
404
资源
未
找到
的错误,TCP的3次握手,dns域名解析,发起
http
请求以及cookie和session的区别,ChatGPT的介绍。
200 - OK,
服务器
成功返回网页- Standard response for successful
HTTP
requests.301 - Moved Permanently(永久跳转),请求的网页已永久跳转到新位置- This and all future requests should be directed to the given.403 - Forbidden...
doGet()和doPost()需要重写。(抛出io和servlet异常)
protected void doGet(
Http
ServletRequest req,
Http
ServletR...