远程Glassfish无法连接到MySQL

我有一个在java-ee中的web应用程序,它是部署在本地,远程使用glassfish。 我在我的远程服务器上本地化了一个数据库。

当我部署我的应用程序localy,一切正常,我的应用程序连接到我的远程数据库。 但是,当我远程部署在我的服务器,它的工作原理,但我的应用程序没有连接到数据库。

我在我的服务器上使用泊坞窗,glassfish是在一个容器,但MySQL不是。 我用payara / server-full(glassfish的实例)部署glassfish:

sudo docker run -it -p 4848:4848 -p 8080:8080 payara/server-full 

我的一个朋友做同样的事情,它运作良好。

您可以在任何types的容器pipe理对象中使用DI。 首先,您必须在应用程序服务器中注册连接(使用IDE或pipe理控制台:4848)无状态会话Bean只是一个示例。

 package mypackage; imports @Stateless public class MyBean { @Resource(lookup = "java:/app/registered_datasource_name") private DataSource dataSource; public void businessMethod() { try ( Connection connection = dataSource.getConnection() ) { // Work with connection here } catch (SQLException e) { throw new SomeRuntimeException(e); } } }