Java GAE 404未找到错误
我试图将我的应用程序部署到GAE,但我总是在所有页面(jsp)上发现404 not found error,除了默认的。RESTful Web服务工作正常。我正在使用netbeans 7.1.1和gae 1.6.4.1 当我在本地进行测试时,一切正常,没有任何问题。但当我上传它时,总是只有默认页面可用。我几乎什么都试过了 我试图使用appcfg.cmd检查文件是否在GAE上。我从GAE下载了我的文件,发现没有人失踪,所以更新过程可能是成功的 我试图用appcfg脚本而不是netbeans插件上传它,但过程失败,原因是: com.google.appengine.tools.admin.jsp编译异常:未能编译jsp文件 我不能简单地使用appcfg脚本,searech互联网几乎一整天都没有找到可能的解决方案。使用netbeans插件上传没有问题 那么,为什么要在gae上一直使用404呢?请帮忙 非常感谢。如果您需要任何其他信息,我将很乐意在这里发布 好的,这是我的web.xmlJava GAE 404未找到错误,java,google-app-engine,Java,Google App Engine,我试图将我的应用程序部署到GAE,但我总是在所有页面(jsp)上发现404 not found error,除了默认的。RESTful Web服务工作正常。我正在使用netbeans 7.1.1和gae 1.6.4.1 当我在本地进行测试时,一切正常,没有任何问题。但当我上传它时,总是只有默认页面可用。我几乎什么都试过了 我试图使用appcfg.cmd检查文件是否在GAE上。我从GAE下载了我的文件,发现没有人失踪,所以更新过程可能是成功的 我试图用appcfg脚本而不是netbeans插件上传
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>facebookLogin</servlet-name>
<servlet-class>Login.FacebookLogin</servlet-class>
</servlet>
<servlet>
<servlet-name>PlanProcess</servlet-name>
<servlet-class>Input.PlanProcess</servlet-class>
</servlet>
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list>
<servlet-mapping>
<servlet-name>facebookLogin</servlet-name>
<url-pattern>/facebooklogin</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>private</servlet-name>
<jsp-file>private.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>private</servlet-name>
<url-pattern>/private</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>editPlan</servlet-name>
<jsp-file>editTrainingPlan.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>editPlan</servlet-name>
<url-pattern>/private/trainingplan/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>listplans</servlet-name>
<jsp-file>listTrainingPlans.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>listplans</servlet-name>
<url-pattern>/private/listplans</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>visualize</servlet-name>
<jsp-file>visualize.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>visualize</servlet-name>
<url-pattern>/private/visualize</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>graph</servlet-name>
<jsp-file>graph.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>graph</servlet-name>
<url-pattern>/graph/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>created</servlet-name>
<jsp-file>created.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>created</servlet-name>
<url-pattern>/created</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>login</servlet-name>
<jsp-file>login.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>login</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>newRecord</servlet-name>
<jsp-file>newRecord.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>newRecord</servlet-name>
<url-pattern>/private/newrecord</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>newPlan</servlet-name>
<jsp-file>newPlan.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>newPlan</servlet-name>
<url-pattern>/private/newplan</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>newExcercise</servlet-name>
<jsp-file>newExcercise.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>newExcercise</servlet-name>
<url-pattern>/private/newexcercise</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>Jersey Web Application</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>Webservice</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Jersey Web Application</servlet-name>
<url-pattern>/api/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>test</servlet-name>
<servlet-class>test.InsertToDb</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>test</servlet-name>
<url-pattern>/testinsert</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>recordProcess</servlet-name>
<servlet-class>Input.RecordProcess</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>recordProcess</servlet-name>
<url-pattern>/record_process</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>excerciseProcess</servlet-name>
<servlet-class>Input.ExcerciseProcess</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>excerciseProcess</servlet-name>
<url-pattern>/excercise_process</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>PlanProcess</servlet-name>
<url-pattern>/plan_process</url-pattern>
</servlet-mapping>
facebook登录
Login.FacebookLogin
平面过程
Input.PlanProcess
login.jsp
facebook登录
/facebook登录
私有的
private.jsp
私有的
/私人的
编辑计划
editTrainingPlan.jsp
编辑计划
/私人/培训计划/*
列表计划
listTrainingPlans.jsp
列表计划
/私人/上市计划
可视化
visualize.jsp
可视化
/私人/形象化
图表
graph.jsp
图表
/图表/*
创建
created.jsp
创建
/创造
登录
login.jsp
登录
/登录
新纪录
newRecord.jsp
新纪录
/私人/新纪录
新计划
newPlan.jsp
新计划
/私人/新计划
新运动
newexercise.jsp
新运动
/私人/新运动
Jersey Web应用程序
com.sun.jersey.spi.container.servlet.ServletContainer
com.sun.jersey.config.property.packages
介绍
1.
Jersey Web应用程序
/原料药/*
测试
test.InsertToDb
测试
/睾丸移植
记录过程
输入记录过程
记录过程
/记录过程
运动过程
Input.exerciseprocess
运动过程
/运动过程
平面过程
/计划和程序
经过数小时的调试和搜索,我发现,如果您想映射jsp文件 你必须使用
<servlet>
<servlet-name>editPlan</servlet-name>
<jsp-file>**/**xxx.jsp</jsp-file>
</servlet>
编辑计划
**/**xxx.jsp
而不是
<servlet>
<servlet-name>editPlan</servlet-name>
<jsp-file>xxx.jsp</jsp-file>
</servlet>
编辑计划
xxx.jsp
路径中的“/”是必需的,它将在loaclhost上工作,但不会部署在gae上。真糟糕…我从未将JSP映射到
web.xml
中的任何东西。你为什么这样做?除非你向我们展示一些关于你的应用程序的详细信息,从你的web.xml文件开始,否则我们可能帮不上忙。我添加了我的整个web.xml文件试试这个。检查1)项目结构2)jdk路径