diff --git a/src/main/java/org/redkale/boot/Application.java b/src/main/java/org/redkale/boot/Application.java index bfcfe0ad0..12c02dc36 100644 --- a/src/main/java/org/redkale/boot/Application.java +++ b/src/main/java/org/redkale/boot/Application.java @@ -1246,6 +1246,13 @@ public final class Application { logger.info("Load CacheSource resourceName = " + sourceName + ", source = " + source + " in " + (System.currentTimeMillis() - st) + " ms"); return source; } + if (!sourceConf.getValue(AbstractCacheSource.CACHE_SOURCE_SOURCE, "").isEmpty()) { + CacheSource source = loadCacheSource(sourceConf.getValue(AbstractCacheSource.CACHE_SOURCE_SOURCE), autoMemory); + if (source != null) { + resourceFactory.register(sourceName, CacheSource.class, source); + } + return source; + } try { CacheSource source = AbstractCacheSource.createCacheSource(serverClassLoader, resourceFactory, sourceConf, sourceName, compileMode); cacheSources.add(source); @@ -1282,6 +1289,17 @@ public final class Application { logger.info("Load DataSource resourceName = " + sourceName + ", source = " + source); return source; } + if (!sourceConf.getValue(AbstractDataSource.DATA_SOURCE_SOURCE, "").isEmpty()) { + DataSource source = loadDataSource(sourceConf.getValue(AbstractDataSource.DATA_SOURCE_SOURCE), autoMemory); + if (source != null) { + if (source instanceof DataMemorySource && DataMemorySource.isSearchType(sourceConf)) { + resourceFactory.register(sourceName, SearchSource.class, source); + } else { + resourceFactory.register(sourceName, DataSource.class, source); + } + } + return source; + } try { DataSource source = AbstractDataSource.createDataSource(serverClassLoader, resourceFactory, sourceConf, sourceName, compileMode); dataSources.add(source); diff --git a/src/main/java/org/redkale/net/Server.java b/src/main/java/org/redkale/net/Server.java index 0c2d16c44..67767292b 100644 --- a/src/main/java/org/redkale/net/Server.java +++ b/src/main/java/org/redkale/net/Server.java @@ -300,9 +300,7 @@ public abstract class Server