仅在第一次尝试时从GAppEngine servlet连接到GoogleCloud MySQL时出错

时间:2017-08-05 06:06:15

标签: java mysql hibernate google-app-engine servlets

说明

问候,我有一个从Eclipse Oxygen部署的Google App Engine标准Web服务,它包含一个servlet,使用hibernate在Google Cloud中连接到具有相同项目ID的MySQL数据库。这是一个简单的活动管理网站,您(作为被邀请者)输入您的电子邮件和给定的代码(请至少在这里不要担心安全性),并确认或取消您对特定活动的帮助。

错误:

错误如下,在localhost上,测试项目将在每次连接和数据传输时正确执行。但是一旦我部署它,当我从用户端测试它时,在第一次尝试时(确认,取消或输入无效数据)它将无法连接到数据库。如果重做操作,它将起作用。

要考虑的信息:

  • 我没有使用JDBC GoogleDriver(因为我找不到让它工作的方法[ClassNotFoundException ...])。我使用“com.mysql.jdbc.Driver”。
  • 数据库允许IP 0.0.0.0/0(每个人)连接到它(我知道,安全问题)。
  • servlet使用root +密码访问数据库(更多安全问题......)。
  • 当用户确认/取消servlet时,会要求Business Class实例检索用户数据以检查它是否与其邀请代码配对。

注意:

我不知道这是怎么回事。请问我需要的详细信息,我会和他们一起编辑这个问题,因为我不知道从哪里开始。 我很确定这个第一次尝试的模式必须能够轻易识别出任何经历过这种情况的人。非常感谢你。

1 个答案:

答案 0 :(得分:0)

当事情在localhost上正常运行时,显然Google Cloud存在特定问题。 Google Cloud' 0.0.0.0/0并不是真正的整个地球"。您必须添加您要连接的子网。我知道的那么多。

更好的是,您可以测试一些像Bluemix这样的PaaS。 Bluemix拥有自己的大Q& A - developer.ibm.com/answers/加上StackOverflow。

当然,您可以使用VPS作为PaaS之外的其他选项。基本上你需要运行一个应用程序而不是与某个平台作斗争。