我试图使用Maven将一个简单的Jersey REST api部署到beanstalk。我用RDS在我的aws中创建了一个环境。我还公开了RDS,这样我就可以通过命令行使用“mysql-h-u xxxx-p”命令连接到它。下面是我的Hibernate配置。
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://aws:3306/jersey</property>
<property name="hibernate.connection.username">user</property>
<property name="hibernate.connection.password">password</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
<property name="hibernate.current_session_context_class">thread</property>
</session-factory>
</hibernate-configuration>
然而,我得到以下信息:错误:
javax.servlet.ServletException: org.hibernate.exception.GenericJDBCException: Could not open connection
org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:391)
org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:382)
org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:345)
org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:220)
我需要什么东西来允许连接。RDS已经显示了一个群组,该群组应该允许我的应用程序与它对话。
知道吗?当我使用本地mysql时,它在本地工作,并且我更新了hibernate以使用aws环境
谢谢
从上面的配置中不能确定您是否用虚拟值遮蔽了真实值。但是,理想情况下应该使用弹性Beanstalk自动填充的环境变量,如RDS_HOSTNAME和rds_port。