Glassfish,EC2,Swing应用程序未连接到@remote接口

时间:2013-08-02 00:06:32

标签: java amazon-ec2 glassfish ejb-3.0 ear

我部署了一个部署了EAR的Glassfish,其中包含一个我通过Java Web Start运行的swing应用程序,它通过@remote接口连接到我的EJB。

我们设置了一个带有静态IP的服务器,我需要做的就是将/ etc / hostname设置为我的主机名(x.x.com),并在我的/ etc / hosts中设置:

127.0.0.1 localhost x.x.x.x x.x.com

非常简单。应用程序运行正常。

但是,我们希望迁移到EC2。我有一台Glassfish服务器,一切都很棒。我有一个弹性IP指向它,我的域名指向它。都好。

程序也可以通过Java Web Start下载和更新。

尝试从我的swing应用程序连接到服务器时出现问题。它通过CORBA连接,我不太了解。

我无法设置/ etc / hosts文件,因为弹性IP不是IP地址。亚马逊为服务器分配本地地址。我无法将/ etc / hosts设置为其中之一,因为如果它们重新启动它将会改变。而且我不想每次都编辑它。

有谁知道如何绕过这个或修复它,以便Glassfish不需要它?它杀了我。

1 个答案:

答案 0 :(得分:0)

你仍然可以为你的eIP的主机文件添加一个条目 - 你试过吗?

EC2实例都具有公共IP和私有10.X.X.X地址。 eIP取代了公共IP地址并且已修复(直到您解除关联)。

AWS的替代方案是允许您拥有固定的私有IP,即可部署到VPC。 Amazon have some very good documentation on VPCs

简而言之,您所获得的内容与本地网络相当,因此您可以选择CIDR块并创建子网,例如10.0.1.0/24。现在,当您启动EC2实例时,您可以启动到该VPC子网并选择专用IP 。与您的eIP一起,您现在可以永久设置两个IP地址(公共和私人),除非您决定自己更改(无论出于何种原因)。

如果需要,您甚至可以添加辅助IP地址。