diff --git a/dbrepo-metadata-service/repositories/src/main/java/at/tuwien/mapper/MetadataMapper.java b/dbrepo-metadata-service/repositories/src/main/java/at/tuwien/mapper/MetadataMapper.java index bb355f02c4729338ecc4518b6c5af1267d0a5ae9..8e628f710aa5eb13d12a48e7b1ded8214e17c9d2 100644 --- a/dbrepo-metadata-service/repositories/src/main/java/at/tuwien/mapper/MetadataMapper.java +++ b/dbrepo-metadata-service/repositories/src/main/java/at/tuwien/mapper/MetadataMapper.java @@ -829,8 +829,9 @@ public interface MetadataMapper { final Pattern WHITESPACE = Pattern.compile("[\\s]"); String nowhitespace = WHITESPACE.matcher(data).replaceAll("_"); String normalized = Normalizer.normalize(nowhitespace, Normalizer.Form.NFD); - String slug = NONLATIN.matcher(normalized).replaceAll(""); - final String name = slug.toLowerCase(Locale.ENGLISH); + String slug = NONLATIN.matcher(normalized).replaceAll("_"); + final String name = slug.toLowerCase(Locale.ENGLISH) + .replaceAll("-", "_"); log.debug("mapping name {} to internal name {}", data, name); return name; } diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/mapper/MetadataMapperUnitTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/mapper/MetadataMapperUnitTest.java index c357020a684be7b90120ef6dc0fad68a42dcd098..732c11124f38fc0bbf2338a93f6d33d04b14d38f 100644 --- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/mapper/MetadataMapperUnitTest.java +++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/mapper/MetadataMapperUnitTest.java @@ -398,10 +398,10 @@ public class MetadataMapperUnitTest extends AbstractUnitTest { public static Stream<Arguments> nameToInternalName_parameters() { return Stream.of( - Arguments.arguments("dash_minus", "OE/NO-027", "oeno-027"), - Arguments.arguments("percent", "OE%NO-027", "oeno-027"), - Arguments.arguments("umlaut", "OE/NÖ-027", "oeno-027"), - Arguments.arguments("dot", "OE.NO-027", "oeno-027") + Arguments.arguments("dash_minus", "OE/NO-027", "oe_no_027"), + Arguments.arguments("percent", "OE%NO-027", "oe_no_027"), + Arguments.arguments("umlaut", "OE/NÖ-027", "oe_no__027"), + Arguments.arguments("dot", "OE.NO-027", "oe_no_027") ); } diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/TableServiceUnitTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/TableServiceUnitTest.java index c16a4191f90cdf1a3228bad5879a40f375abe409..d32189f944767a41aea777728ce7d1c58cf05a10 100644 --- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/TableServiceUnitTest.java +++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/TableServiceUnitTest.java @@ -184,7 +184,7 @@ public class TableServiceUnitTest extends AbstractUnitTest { assertTrue(column0.getAutoGenerated()); final TableColumn column1 = response.getColumns().get(1); assertEquals("I Am Späshül", column1.getName()); - assertEquals("i_am_spashul", column1.getInternalName()); + assertEquals("i_am_spa_shu_l", column1.getInternalName()); assertEquals(TableColumnType.TEXT, column1.getColumnType()); assertTrue(column1.getIsNullAllowed()); assertFalse(column1.getAutoGenerated()); diff --git a/dbrepo-metadata-service/services/src/main/java/at/tuwien/service/impl/TableServiceImpl.java b/dbrepo-metadata-service/services/src/main/java/at/tuwien/service/impl/TableServiceImpl.java index e8fecdf300095d9d936a6bdf1a9269b141952bcd..593b612a9c36162abc5d97f1fb95ea11cbce7078 100644 --- a/dbrepo-metadata-service/services/src/main/java/at/tuwien/service/impl/TableServiceImpl.java +++ b/dbrepo-metadata-service/services/src/main/java/at/tuwien/service/impl/TableServiceImpl.java @@ -19,7 +19,6 @@ import at.tuwien.exception.*; import at.tuwien.gateway.DataServiceGateway; import at.tuwien.gateway.SearchServiceGateway; import at.tuwien.mapper.MetadataMapper; -import at.tuwien.mapper.SparqlMapper; import at.tuwien.repository.DatabaseRepository; import at.tuwien.service.*; import lombok.extern.log4j.Log4j2; diff --git a/dbrepo-ui/pages/database/[database_id]/table/import.vue b/dbrepo-ui/pages/database/[database_id]/table/import.vue index 724205c7ba1934dfcbe4c4e3b4a88659e47f77b6..07e56afea3ea7ca2a031eece14976ffc488aa431 100644 --- a/dbrepo-ui/pages/database/[database_id]/table/import.vue +++ b/dbrepo-ui/pages/database/[database_id]/table/import.vue @@ -325,10 +325,9 @@ export default { this.table = table resolve(table) }) - .catch((error) => { - console.error('Failed to create table', error) + .catch(({code, message}) => { const toast = useToastInstance() - toast.error(this.$t(error.code)) + toast.error(`${this.$t(code)}: ${message}`) this.loading = false reject(error) }) @@ -347,10 +346,10 @@ export default { toast.success(this.$t('success.import.dataset')) this.cacheStore.reloadDatabase() }) - .catch(({code}) => { + .catch(({code, message}) => { console.error('Failed to import csv') const toast = useToastInstance() - toast.error(this.$t(code)) + toast.error(`${this.$t(code)}: ${message}`) this.loading = false }) .finally(() => {