设为首页 收藏本站
查看: 453|回复: 0

[经验分享] tomcat的一些小问题,也醉

[复制链接]

尚未签到

发表于 2017-1-24 11:32:08 | 显示全部楼层 |阅读模式
  昨晚复习JSP相关知识,遇到一些小问题,我也是醉了。。。
  1.加入外部tomcat时,对应的jre home应该是java->jdk的路径(jre所在jdk的路径),而不是java->jre
  2.出现404错误很久很久。。。发现当在一个web工程上右键new->jsp时,默认会把jsp放在webRoot根路径下(与直接在webRoot下new jsp等价),而浏览器直接通过http://localhost:8080/webDemo/xxx.jsp即可访问,无需通过http://localhost:8080/webDemo/webRoot/xxx.jsp来访问;受相关书籍影响,如果把JSP挪到webRoot外面,与webRoot同级位置,表面上是位于web工程的跟路径下,符合http://localhost:8080/webDemo/xxx.jsp
  的访问习惯,但是无论如何都会出现404错误。。。困扰很久(tomcat->work->catalina->localhost下根本没有相应的编译出来的类jsp)。
  3.出现端口8080占用:cmd窗口,netstat ->ano | findstr "8080" 查看哪个PID占用了tomcat的8080端口? tasklist查看哪个进程名对应占用端口的PID,kill掉即可,再重启tomcat;
  4加入外部tomcat时,必须选上enabled,才会在server窗口出现你所加入的tomcat。。。
  5.servelt注解技术:(如servlet 3.x)Servlet3是Java EE6规范的一部分,必须升级到支持此规范的IDE工具和tomcat jdk版本。。。。。
  6.tomcat放在eclipse中启动,控制台没有报错,但是在地址栏输入loclahsot:8080却看不到tomcat主页。——解决办法:双击server下的tomcat服务器,在server locations选择中间项:use tomcat installation.
  并且控制台还出现如下警告:
  StandardServer.await: Invalid command '' received
  ——解决办法:查看tomcat所使用的jdk版本跟配置的环境变量里jdk的版本是否一致,不一致则改成环境变量里jdk的安装版本,重启成功出现欢迎界面
  7.部署项目到tomcat可以通过修改tomcat的conf/server.xml文件。在<Host></Host>下添加以下东西:
  <Context path="/demo" docBase="E:\mywork\项目名称\WebRoot" reloadable="true" />
  8.搭建spring环境时,需要把一些常用的common包全部导入,否则会启动tomcat失败!
  否则会报错:Java.lang.NoClassDefFoundError:org/apache/commons/logging/LogFactory
  注意:并不是打日志才需要这些common-logging包(还有其他common包),spring启动也是需要这些common包的。
  9.tomcat启动成功,输入localhost:8080有欢迎界面,但输入localhost:8080/项目名 无法出现欢迎页面,404:
  1)首先排查项目名有没有写错
  2)没写错再确定tomcat的设置页面(打开方式见情况6)里Server Locations->Deploy path是不是tomcat下的webapps路径(默认不是,是wtswebapps),不是的话修改。修改完之后即可成功访问项目主页面。
  10.tomcat的另一种“高级”部署方法(更新于2016/12/5)
  搞开发也快3年了。。竟然到现在才发现这种高端的项目部署方式。。
  1)首先,在eclipse里面双击tomcat,打开界面;
  2)需注意Ports部分可以修改tomcat的一些端口,比如HTTP/1.1可以修改访问端口,而Server Locations一定要选择中间那一项~
  2)打开Open launch configuration,切换至source选项卡,点击Add按钮:
  可打开Add source界面,然后选择“Java Project”选项,选择相应的项目:
  点击“ok”。
  3)切换至“Modules”标签页,选择Add External  Web Module,选择相应的项目并设置Path,这里的Path将是访问页面时的上下文,再保存界面设置,其中Document base要设置到项目的WEB-INF/classes所在的父目录,这里是WebContent;Auto reloading enabled不勾选:
  
注:这里的Path默认 是和项目同名的,但是如果你设置了项目的 Web Project Settings里面的Context root,则这里的Path将会显示你设置的Context root(也就是你再输入项目访问路径时的上下文)。但注意,如果你是部署成功以后再修改Context root,然后访问的时候再输入你设置的上下文会报404,意味着对默认Context root的修改必须是在部署之前进行才能成功!
  4)之后启动项目即可。在项目比较少的情况下觉得没必要,但是一旦项目多了且需要同时启动,这种做法就比较优雅。
  ============== 更多的问题亟待发现,所以基础的东西还是很重要的。。。 =============
  总结:一般熟悉了框架技术,这种基础的东西再复习会发现诸多问题。虽然不太顺利,但也巩固了jsp编译成类servlet的运行原理,以及tomcat work目录下到底放的是什么。。。。。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-332937-1-1.html 上篇帖子: Tomcat集群——使用MSM管理集群Session 下篇帖子: 同时启动两个tomcat:端口冲突 && 展示不同名称
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表