diff --git a/server/bundles/io.cloudbeaver.server/schema/service.core.graphqls b/server/bundles/io.cloudbeaver.server/schema/service.core.graphqls index 7227ada04f..62667bd295 100644 --- a/server/bundles/io.cloudbeaver.server/schema/service.core.graphqls +++ b/server/bundles/io.cloudbeaver.server/schema/service.core.graphqls @@ -180,6 +180,7 @@ type DriverInfo { providerId: ID # Driver Java class name driverClassName: String + defaultHost: String defaultPort: String defaultDatabase: String defaultServer: String diff --git a/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/model/WebDatabaseDriverConfig.java b/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/model/WebDatabaseDriverConfig.java index 1a19544f72..b7da447237 100644 --- a/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/model/WebDatabaseDriverConfig.java +++ b/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/model/WebDatabaseDriverConfig.java @@ -20,6 +20,7 @@ import io.cloudbeaver.DBWebException; import io.cloudbeaver.WebServiceUtils; import io.cloudbeaver.model.session.WebSession; import org.jkiss.dbeaver.DBException; +import org.jkiss.dbeaver.model.DBConstants; import org.jkiss.dbeaver.model.connection.DBPAuthModelDescriptor; import org.jkiss.dbeaver.model.connection.DBPConnectionConfiguration; import org.jkiss.dbeaver.model.connection.DBPDriver; @@ -30,6 +31,7 @@ import org.jkiss.dbeaver.registry.DataSourceProviderRegistry; import org.jkiss.dbeaver.registry.network.NetworkHandlerDescriptor; import org.jkiss.dbeaver.registry.network.NetworkHandlerRegistry; import org.jkiss.dbeaver.runtime.properties.PropertySourceCustom; +import org.jkiss.utils.CommonUtils; import java.util.Arrays; import java.util.Map; @@ -84,6 +86,11 @@ public class WebDatabaseDriverConfig { return driver.getDriverClassName(); } + @Property + public String getDefaultHost() { + return CommonUtils.toString(driver.getDefaultHost(), DBConstants.HOST_LOCALHOST); + } + @Property public String getDefaultPort() { return driver.getDefaultPort(); @@ -96,7 +103,8 @@ public class WebDatabaseDriverConfig { @Property public String getDefaultServer() { - return driver.getDefaultServer(); + // defaultHost and defaultServer are different properties + return getDefaultHost(); } @Property @@ -169,7 +177,7 @@ public class WebDatabaseDriverConfig { try { DBPConnectionConfiguration cfg = new DBPConnectionConfiguration(); cfg.setUrl(driver.getSampleURL()); - cfg.setHostName("localhost"); + cfg.setHostName(DBConstants.HOST_LOCALHOST); cfg.setHostPort(driver.getDefaultPort()); cfg.setUrl(driver.getConnectionURL(cfg)); DBPPropertyDescriptor[] properties = driver.getDataSourceProvider().getConnectionProperties(webSession.getProgressMonitor(), driver, cfg); diff --git a/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/server/CBConstants.java b/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/server/CBConstants.java index 2fa5ed0ebf..56c2c53be9 100644 --- a/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/server/CBConstants.java +++ b/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/server/CBConstants.java @@ -74,9 +74,6 @@ public class CBConstants { public static final String DEFAUL_APP_ANONYMOUS_ROLE_NAME = "user"; - - public static final String DEFAULT_SERVER_ADDR = "localhost"; - public static final String VAR_CB_LOCAL_HOST_ADDR = "CB_LOCAL_HOST_ADDR"; public static final String VAR_HOST_DOCKER_INTERNAL = "host.docker.internal"; diff --git a/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/service/core/impl/WebServiceCore.java b/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/service/core/impl/WebServiceCore.java index ac3d04db5e..50eee8b077 100644 --- a/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/service/core/impl/WebServiceCore.java +++ b/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/service/core/impl/WebServiceCore.java @@ -31,6 +31,7 @@ import org.jkiss.code.NotNull; import org.jkiss.code.Nullable; import org.jkiss.dbeaver.DBException; import org.jkiss.dbeaver.Log; +import org.jkiss.dbeaver.model.DBConstants; import org.jkiss.dbeaver.model.DBPDataSourceContainer; import org.jkiss.dbeaver.model.app.DBPDataSourceRegistry; import org.jkiss.dbeaver.model.connection.DBPConnectionConfiguration; @@ -453,7 +454,7 @@ public class WebServiceCore implements DBWServiceCore { if (handler instanceof DBWTunnel) { DBWTunnel tunnel = (DBWTunnel)handler; DBPConnectionConfiguration connectionConfig = new DBPConnectionConfiguration(); - connectionConfig.setHostName("localhost"); + connectionConfig.setHostName(DBConstants.HOST_LOCALHOST); connectionConfig.setHostPort(CommonUtils.toString(nhConfig.getProperties().get(DBWHandlerConfiguration.PROP_PORT))); try { monitor.subTask("Initialize tunnel");