From 95503b9173ec7ae57d353dcdec8d4af44713eb23 Mon Sep 17 00:00:00 2001 From: elong Date: Fri, 26 Aug 2016 11:15:49 -0400 Subject: [PATCH] 0002754: iSeries can't detect sym tables on startup --- .../db2/Db2As400DatabasePlatform.java | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/symmetric-jdbc/src/main/java/org/jumpmind/db/platform/db2/Db2As400DatabasePlatform.java b/symmetric-jdbc/src/main/java/org/jumpmind/db/platform/db2/Db2As400DatabasePlatform.java index 0f24b929c7..9c2fd458a4 100644 --- a/symmetric-jdbc/src/main/java/org/jumpmind/db/platform/db2/Db2As400DatabasePlatform.java +++ b/symmetric-jdbc/src/main/java/org/jumpmind/db/platform/db2/Db2As400DatabasePlatform.java @@ -2,6 +2,7 @@ import javax.sql.DataSource; +import org.apache.commons.lang.StringUtils; import org.jumpmind.db.sql.SqlTemplateSettings; public class Db2As400DatabasePlatform extends Db2DatabasePlatform { @@ -20,11 +21,19 @@ protected Db2DdlBuilder createDdlBuilder() { return new Db2As400DdlBuilder(); } - public String getDefaultCatalog() { - return ""; - } - public String getDefaultSchema() { - return ""; + if (StringUtils.isBlank(defaultSchema)) { + try { + defaultSchema = (String) getSqlTemplate().queryForObject("select CURRENT SCHEMA from sysibm.sysdummy1", String.class); + } catch (Exception e) { + try { + defaultSchema = (String) getSqlTemplate().queryForObject("select CURRENT SCHEMA from QSYS2.QSQPTABL", String.class); + } catch(Exception ex) { + defaultSchema = ""; + } + } + } + return defaultSchema; } + }