您好我在eclipse中创建了一个Google App Engine Project应用程序。 它在我的localhost上工作正常,我已经在GAE上部署了它。
显示所有静态页面,如登录,注册页面,但是当我从jsp页面向servlet发送请求时,它显示错误。
假设我已经打开了login.jsp页面,当我点击登录按钮时它会显示一个错误:
Error: Not Found
The requested URL /Dologin was not found on this server.
我已在com
文件夹下的src
包中定义了所有servlet文件。
在此之前,我收到了webservlet annotation
的错误,但我在tomcat server
的库中添加了build path
,所有错误都消失了,但现在出现了这个servlet映射错误。
的web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app 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"
version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee">
<!-- Servlets -->
<servlet>
<servlet-name>greetServlet</servlet-name>
<servlet-class>pj.server.GreetingServiceImpl</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>greetServlet</servlet-name>
<url-pattern>/prj/greet</url-pattern>
</servlet-mapping>
<!-- Default page to serve -->
<welcome-file-list>
<welcome-file>signup.jsp</welcome-file>
</welcome-file-list>
</web-app>
here is mt base/main page Google应用引擎部署的项目。
任何人都可以帮助我。
答案 0 :(得分:3)
在此之前,我收到了webservlet注释的错误,但我在构建路径中的库中添加了tomcat服务器,所有错误都消失了,但现在这个servlet映射错误就出现了。
从上面的描述中,您似乎正在使用javax.servlet.annotation.WebServlet
注释来配置您的环境。从servlet 3.0规范开始支持基于注释的servlet配置,但是,在撰写本文时,App Engine支持的servlet API为2.5。删除所有此类注释,并仅通过web.xml
描述符配置您的环境。
Here您可以找到Servlet API 3.0的App Engine功能请求。
答案 1 :(得分:-1)
也许你错过了greetServlet方法中的路径。我猜 greetServlet 是你的servlet,里面你有foo方法:
@Path("/Dologin") //add this before your method
public String foo(@Context HttpServletRequest req) {...}