解决 Tomcat正常 请求404问题

转自:Bruce 的 解决:Setting property 'source' to 'org.eclipse.jst.jee.server 的问题

Eclipse 启动 tomcat 服务之后,部署项目也正常。但是访问项目页面时报404,访问tomcat(localhost:8080)正常。
服务端控制台未报任何错误,不过出现警告:

 


解决方法如下:

当你用Eclipse运行web项目的时候,你就会看到控制台出现:

   

这样的字样,说的是server.xml的Service标签里的Engine标签里的Host标签里的Context标签配置了一个'source'属性,属性值是'org.eclipse.jst.jee.server:firstProject'

但问题是Context标签是不支持source这个属性的,所以弹出了警告,所以大家也发现的是,尽管有警告,但是大部分人的程序是依然可以运行没有问题的,但少部分人的不能够运行。

也许你已经在网上查到很多像这样的问题,而且也给出了解决办法,但是你照着解决的方法去做了,警告依然存在!


那现在你就可以跟着我的步骤来做了:

我先说一下网上别人所说的步骤,埋个伏笔

1、双击Servers里的Tomcat v8.5 Server at localhost
  

2、然后弹出如下界面:

  

  看到没,在Server Options 选项里有个 Publish module contexts to separate XML files 的选项,到这里我们也一样把勾勾上,不过问题不是这样就一定解决了,我说过有的朋友这样做了,问题依然没有解决,把勾勾上以后记得保存,如果警告依然存在的朋友们跟着我继续往下看。

3、
  

  

  大家仔细对比下你自己的和我图片上的,你会发现你默认的选项应该是Use workspace metadata这个选项,只不过是笔者我改为了tomcat的安装路径罢了,

  因为Use workspace的路径文件夹不方便后面的讲解中要找的文件,所以笔者使用第2个tomcat安装目录来操作,而Deploy path:你如果没有改过的话,应该是叫wtpwebapps,所以此处读者根据自己的Deploy path的值进行下面的操作。

  好了准备工作差不多了,现在是重点来了,为什么好多人做了1.2步操作以后就好了而你自己的没好呢?

  原因是:在做1、2 步操作之前你们已经运行过程序,而运行以后程序就会在tomcat文件夹下多了一个backup文件夹

  

里面的目录结构如图:
  

  有没有很熟悉的感觉,没错这就是从tomcat目录里conf文件夹下拷贝过来的文件
接下来直接说操作好了:

4、删除掉刚才的backup文件夹[backup所在位置根据第3步所说的,因为笔者使用的时tomcat安装目录所以就在目录下就直接发现了,

  但如果你用的是Use workspace metadata这个选项的话,你就在 D:\learn\Java\MyEclipse\Workspaces\MyEclipse 2017 CI\.metadata\.plugins\org.eclipse.wst.server.core 路径下可以看到里面有很多的文件,

  Eclipse就把项目发布到了这里,里面的目录结构和tomcat里面的差不多,总之把 \Workspace\.metadata\.plugins\org.eclipse.wst.server.core 里面的文件全删除掉,然后重启tomcat就可以了!!!

5、找到tomcat目录里的conf目录里的Catalina目录里有个localhost文件夹,把文件夹里面的文件全删除掉。

6、此处告诉大家3、4、5步骤纯属告诉你们Eclipse发布的一个细节,删除上面的文件其实不用那么麻烦:

  在Tomcat v8.5 Server at localhost里,首先 右键 --> 移除里面已经添加的所有工程,然后 右键 --> Clean清空项目虚拟目录里的文件,然后重新运行你们的程序就可以了。

  注意:如果有人想和我一样在第3步Server Locations里修改项目发布目录的话,只要发布过一次项目你会发现,Server Locations里面的选项是灰色的,不可以改,怎么办呢,这就需要你照着第6步里面的移除项目,清空文件,然后你就惊奇的发现,Server Locations可以修改

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客
应支付0元
点击重新获取
扫码支付

支付成功即可阅读