【问题标题】:Communication between Android and EC2 with RDSAndroid 和 EC2 之间使用 RDS 进行通信
【发布时间】:2016-08-06 07:08:09
【问题描述】:

我在 AWS 上有一个配置了 Apache tomcat 8 和 java 的 EC2 实例。 按照这里的一些教程,我可以在 eclipse 中创建我的 Web 服务的一个 .war 并将其放在我的 EC2 实例中 tomcat 的 webapps 文件夹中。 我可以使用特定端口和 .war 文件名从 EC2 的 IP 地址访问此服务。 例如:

IPADDRESS:8080/MyApplication.

似乎一切正常,我可以打开服务并查看 wsdl 文件。我的 Web 服务(在 .war 文件中)配置为与来自亚马逊的 RDS 实例建立连接。 连接本身没问题,我在 localhost 中测试了与 Android 的 RDS 的直接连接。 但是,当我尝试连接我放入 EC2 中的服务时(从那里
与我的 RDS 的连接是从 Android 创建的,没有数据返回,我得到一个空指针。 我用来从 Android 与 EC2 建立连接的链接是 EC2 的公共 IP 和端口(8080),然后是 wsdl 文件的特定路径。 例如:

http://99.999.999.99:8080/MyApplication/services/SomeServiceName?wsdl

我正在使用 KSOAP 库在 Android 端使用 Web 服务,我 不知道我没有从 EC2 实例获取数据的原因。

Web服务中的所有方法和Android中的消费都可以正常工作,我在本地主机上测试了所有。

  • 我使用 SOAP UI 测试了我所有的 Web 服务方法,所有方法都可以正常工作

  • 为了测试包含我的数据库的 RDS 实例,我在 localhost 中使用 tomcat 8 和通信运行 Web 服务 Android -> 我的 PC (localhost) -> RDS 实例 (My DB) em> 正在工作。

问题是当我尝试从以下位置更改通信线路时:

 *Android ->  My PC (localhost) -> RDS instance (My DB)*

到:

 *Android ->  EC2 instance -> RDS instance (My DB)*

再次,我在 EC2 中部署我的 Web 服务。

  • 我为 RDS 和 EC2 使用相同的安全组:

入站规则:

http://i.stack.imgur.com/RUdyl.png

出站规则:

http://i.stack.imgur.com/W4gLc.png

【问题讨论】:

  • 你能在远程计算机上使用公共 ip 测试你的 web 服务吗?还是在 ec2 实例中使用 localhost?例如,您可以使用soap ui 测试您的Web 服务吗? - 您是否在 ec2 实例中配置了安全组?可能无法从任何地方访问端口 8080,请尝试给我们更多信息
  • 感谢回复,我编辑一下,看看。
  • 是另一个名字,是的,是一样的。我没有看到单个“p”,我会编辑,谢谢。
  • 1 首先,在您的智能手机中下载一个应用程序来ping ip 地址,2 检查您的智能手机是否看到您的ec2 实例的公共IP 地址,3 如果它看不到IP 地址尝试使用ec2 实例的公共 DNS 而不是公共 IP 地址,4 对您的 ec2 实例而不是您的计算机进行肥皂 ui 测试,5 如果您可以执行您的测试用例,这意味着您的 ec2 实例和您的应用程序工作正常, 和你的android应用程序有关的问题,6让我们知道步骤的结果,以便帮助你

标签: java android amazon-web-services amazon-ec2 amazon-rds


【解决方案1】:

我终于解决了这个问题。

我做了以下事情: 我连接到我的 ECB2 实例并打开 tomcat 8 日志,所以我看到错误是 ClassNotFoundException,与 Postgres(我的引擎 DB)有关。

我打开了我的 web 服务 eclipse 项目,看到了这个(愚蠢的)错误:

.jar postgres 驱动程序位于该 lib 文件夹中:

而不是那个文件夹:

所以,基本上,当我在 EC2 实例中部署我的 Web 服务时,postgres 驱动程序不会一起使用。

感谢您的帮助,希望对其他人有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-03
    • 1970-01-01
    • 2019-10-07
    • 1970-01-01
    相关资源
    最近更新 更多