谷歌浏览器打开JSP页面依然输出源代码

来源:互联网 发布:pop服务器端口 编辑:程序博客网 时间:2024/06/05 04:31

前言:

进入一个新的公司,小部门却维护着很多的项目,基本都是优化、维护等工作,了解到这种情况真是有点失落。不过他们却让我自己搞一个支付系统,目前暂时对接的是微信支付。

在公司里一个项目我自己一个人搞,这种事还是头一次,也就硬着头皮琢磨了。其实也没这么菜,只是工作中的项目都很重要,很少随便叫个新手搭架构的,我也就当试试手了。

废话有点多,直接上项目吧,已经一路遇上的重重困难。

项目github地址:rich-demo。

说标题上的问题吧,编译项目,发布到tomcat服务器上运行没有任何问题,访问纯粹是html代码的jsp页面访问也没有问题,可是编写上Java代码,例如简单的

<%String path = request.getContextPath();%>,

java代码,报错了,直接原封不动的吧源码输出来,看起来就是乱码了。

我在想,我以前也是也是这样搭建系统的,都不会出这种情况,有点苦恼,在网上查了很多,根据一些文章的思路是,第一,查看是否是没有编译文件,即jsp文件编译成.java文件。一查,果然是这样,然后继续跟进为什么tomcat没有编译,查到是项目的一个配置导致没有编译,直接源码输出。即,web.xml配置中,<url-pattern>/*</url-pattern>,改成<url-pattern>/</url-patterntern>


说是,如果填入/*会将代码直接显示出来,正确的话应该是写/。

修改后果然正确编译出.java文件并且返回正常,并不是缺HttpRequest、HttpResponse的jar包。


补充:其中修改的缘由我也不了解,这文章基本没有新颖,只是把网上的东西整理一遍,不过我在遇到这个问题的时候,确实困惑了很久,把网上的资料都查了一遍,都试过一遍,最后找出这个解决问题的方法,不为别的,只希望再把问题描述一遍,强调一遍,以免更多的同行走更多弯路,费神费力。

参考原文是这一个帖子:http://bbs.csdn.net/topics/391938370