diff --git a/dao/src/main/java/org/thingsboard/server/dao/widget/WidgetTypeServiceImpl.java b/dao/src/main/java/org/thingsboard/server/dao/widget/WidgetTypeServiceImpl.java index f533f715bd..b9cd303322 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/widget/WidgetTypeServiceImpl.java +++ b/dao/src/main/java/org/thingsboard/server/dao/widget/WidgetTypeServiceImpl.java @@ -124,8 +124,10 @@ public class WidgetTypeServiceImpl implements WidgetTypeService { if (widgetsBundle == null) { throw new DataValidationException("Widget type is referencing to non-existent widgets bundle!"); } - - String alias = widgetType.getName().toLowerCase().replaceAll("\\W+", "_"); + String alias = widgetType.getAlias(); + if (alias == null || alias.trim().isEmpty()) { + alias = widgetType.getName().toLowerCase().replaceAll("\\W+", "_"); + } String originalAlias = alias; int c = 1; WidgetType withSameAlias; diff --git a/dao/src/main/java/org/thingsboard/server/dao/widget/WidgetsBundleServiceImpl.java b/dao/src/main/java/org/thingsboard/server/dao/widget/WidgetsBundleServiceImpl.java index de20ff0ada..7e413d8614 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/widget/WidgetsBundleServiceImpl.java +++ b/dao/src/main/java/org/thingsboard/server/dao/widget/WidgetsBundleServiceImpl.java @@ -169,7 +169,10 @@ public class WidgetsBundleServiceImpl implements WidgetsBundleService { @Override protected void validateCreate(WidgetsBundle widgetsBundle) { - String alias = widgetsBundle.getTitle().toLowerCase().replaceAll("\\W+", "_"); + String alias = widgetsBundle.getAlias(); + if (alias == null || alias.trim().isEmpty()) { + alias = widgetsBundle.getTitle().toLowerCase().replaceAll("\\W+", "_"); + } String originalAlias = alias; int c = 1; WidgetsBundle withSameAlias;