个人学习整理,如有不足之处,请不吝不吝赐教。转载请注明:@CSU-Max
今天写了一个小的 JavaWeb 项目传到 SAE 上。訪问的时候出错。
本地測试是正常的,并且曾经做微信平台开发的时候上传的项目就能够正常訪问。于是花了两个小时的时间最终找出了错误的原因。
错误信息例如以下:
Error 404 – Not Found.No context on this server matched or handled this request.
Contexts known to this server are
依据网上的资料,可能是项目中的 servlet-api.jar 等 jar 包与 SAE 平台提供的 jar 包相冲突。于是将项目打包成 war 包后。删除 lib 下的相关 jar 包。
又一次上传測试。发现还是报同样的错误。
第一步不成,无计可施,我将项目中 web.xml 中关于 servlet 的部分删除之后,在根文件夹下新建一个 index.jsp 页面。又一次编译上传。能够正常訪问。
可见还是 java 部分出现了问题,既然前面已经排除了 servlet-api.jar 等 jar 包冲突问题,那还会是其它什么原因呢?
再经过在网上查找,发现可能是编译使用的 jdk 版本号问题。问题就是出如今这里。本机上的 jdk 版本号是 1.7。而使用 SAE 须要 jdk 1.6,于是换了 1.6 的 jdk,又一次编译上传。測试正常。
原来曾经上传到 SAE 上项目正常訪问是由于当时使用的机器上 jdk 版本号是 1.6。而当前机器上的 jdk 版本号是1.7。
********************************************************************************
** 转载请注明出处: @CSU-Max http://blog.csdn.net/csu_max **
********************************************************************************