将 JSP 与 Google App Engine 结合使用时出现空白页
Posted
技术标签:
【中文标题】将 JSP 与 Google App Engine 结合使用时出现空白页【英文标题】:Getting Blank page While using JSP with Google App Engine 【发布时间】:2013-12-23 10:57:59 【问题描述】: package com.example.datastoreWrite;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@SuppressWarnings("serial")
public class DataStoreWriteServlet extends HttpServlet
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
// TODO Auto-generated method stub
Key v1 = KeyFactory.createKey("Person", "Raghav");
Key r1 = KeyFactory.createKey("Person", "vinay");
DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
Entity e1, e2;
try
e1 = datastore.get(r1);
e2 = datastore.get(v1);
Long vAge = (Long) e1.getProperty("age");
Long rAge = (Long) e2.getProperty("age");
System.out.println("vinay age"+vAge);
System.out.println(" age"+rAge);
catch (EntityNotFoundException e)
// Alice or Bob doesn't exist!
String message = "Simple";
req.setAttribute("message", message); // This will be available as $message
try
req.getRequestDispatcher("/Show.jsp").forward(req, resp);
catch (ServletException e)
// TODO Auto-generated catch block
e.printStackTrace();
这是我的 JSP 文件
<%@ page language="java"
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Simple DataStore Display</title></head>
<body><p>Message: $message</p></body>
</html>
我的 WEB.xml
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
<servlet>
<servlet-name>SimpleDataStoreApplicationTest</servlet-name>
<servlet-class>com.datasote.test.SimpleDataStoreApplicationTestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>SimpleDataStoreApplicationTest</servlet-name>
<url-pattern>/simpledatastoreapplicationtest</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list></web-app>
【问题讨论】:
【参考方案1】:我怀疑您忘记在 Show.jsp 文件中正确关闭页面指令。
请使用:<%@ page language="java"%>
。
除上述之外,您的代码看起来很好执行,如果数据不存在,您将在Show.jsp
页面中看到Message: Simple
输出。
【讨论】:
我已经正确写了标签,这是***模板中的格式问题。 好的。请显示 web.xml 文件以及您如何调用 Servlet。 亲爱的 Romie 我已经添加了我正在使用的 web.xml 文件。 我不确定您是否在此处输入代码并无意中引入了拼写错误,但您在 web.xml 中放入的包+类名是 com.example.datastore.DataStoreExampleServlet,而它应该是com.example.datastoreWrite.DataStoreWriteServlet 根据您的 .Java 文件。请检查。 实际上我已经创建了两个 servlet 类,一个是写入 appengine 数据存储,第二个是从中获取。所以我上面写的类是 DataStoreWriteServlet 和 web.xml 文件是 DataStoreExampleServlet 。抱歉有拼写错误应该是 com.example.datastore.DataStoreExampleServlet 。但我又遇到了同样的错误以上是关于将 JSP 与 Google App Engine 结合使用时出现空白页的主要内容,如果未能解决你的问题,请参考以下文章
.jsp 文件不适用于 Google App Engine 留言簿教程
是否可以将 Google App Engine 与 Google Cloud *** 一起使用?
将 Google 回合制多人游戏与 Google App Engine 集成
Google App Engine JSP 无法部署:java.lang.RuntimeException:无法获取系统 Java 编译器。请使用 JDK,而不是 JRE