首页 > 代码库 > eclipse使用内置tomcat和使用外部tomcat的设置

eclipse使用内置tomcat和使用外部tomcat的设置

    最近因为项目中jsp发请求要访问项目以外的文件,直接访问写成“c:\xxx\xxx.mp4”来访问是没有权限的,不能完成现有要求。经查询后发现可以在tomcat中配置虚拟目录将本地的文件设置成"http://localhost:8080/xxx.mp4",本地文件经过这样的虚拟映射后就可以在项目中访问了。

    上面的思路是非常正确的,但是具体实施起来却遇到了问题,最终经反复启动项目和本机上的tomcat发现,eclipse项目启动时,只是使用了本机上的部分tomcat组件,并没有完全加载tomcat中的全部配置。最简单的验证方法就是,eclipse项目启动后,在浏览器地址上输入http://localhost:8080/prjName可以正常运行项目,但是在浏览器中直接输入http://localhost:8080/却无法看到tomcat的管理页面,这个是非常诡异的。要解决在项目中能够正常使用地址映射的问题就必须要明白,为什么eclipse项目启动后不能访问http://localhost:8080/这个地址。经过搜索后我得到如下解决方案:

    用eclipse正常加载了项目之后会有server选项如图:

    

    鼠标左键双击红框,会出现一个配置画面,如图:


    eclipse默认是选择的第一个红框中的选项也就是“Use workspace metadata(...)”,这个选项的意思就是,启动项目时eclipse之调用了tomcat的核心组件,内置到eclipse中,启动和部署时跟真正的tomcat没有关系,因此当使用eclipse默认设置时,访问http://localhost:8080/是无法访问的,而访问http://localhost:8080/xxx 自己的项目却能正常访问。

    如果想要将启动eclipse项目时使用的tomcat和手动启动机器上的tomcat达到一样的效果,就需要选择上面第二个红框中的选项也就是“Use Tomcat installation(...)”,选用这个选项,启动eclipse后,就可以访问http://localhost:8080/,并且会出现tomcat配置页面,同时,在tomcat中加入的虚拟地址配置都会在项目中起作用。

    

eclipse使用内置tomcat和使用外部tomcat的设置