This is an automated email from the ASF dual-hosted git repository.

jsinovassinnaik pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/unomi.git


The following commit(s) were added to refs/heads/master by this push:
     new e4a8248bb UNOMI-829: Dependency updates (#662)
e4a8248bb is described below

commit e4a8248bbf8613111abbee27c2c151c216bfafa8
Author: jsinovassin <[email protected]>
AuthorDate: Mon Jun 3 15:41:18 2024 +0200

    UNOMI-829: Dependency updates (#662)
    
    * UNOMI-829: remove some usages of javax.validation
    
    * UNOMI-829: remove hibernate validator
    
    * UNOMI-829: upgrade groovy version
    
    * UNOMI-829: Update apache libs
    
    * UNOMI-829: update slf4f
    
    * UNOMI-829: update httpclient and httpcore- osgi version
    
    * remove jakarta-regex
    
    * update joda-time
    
    * upgrade ognl
    
    * UNOMI-829: update mvel2, ognl, ST4, remove glassfish json
    
    * UNOMI-829: update maven bundle plugin
    
    * UNOMI-829: add commons-codec
    
    * small upgrade jackson
    
    * remove guava  + init json schema for graphql schema building
    
    * remove duplicate dependency declaration
    
    * upgrade jackson in json-schema
    
    * upgrade jsoup
    
    * make com.ethlo.time optional
    
    * small upgrade jUnit
    
    * upgrade snake yaml
---
 api/pom.xml                                        |   8 --
 .../java/org/apache/unomi/api/ContextRequest.java  |   5 -
 .../apache/unomi/api/EventsCollectorRequest.java   |   7 --
 .../apache/unomi/api/utils/ValidationPattern.java  |  22 ----
 common/pom.xml                                     |   3 +-
 extensions/geonames/rest/pom.xml                   |   2 +-
 .../unomi/geonames/rest/GeonamesEndPoint.java      |   4 +-
 extensions/geonames/services/pom.xml               |   5 -
 .../geonames/services/GeonamesServiceImpl.java     |   4 +-
 .../karaf-kar/src/main/feature/feature.xml         |   6 +-
 extensions/groovy-actions/rest/pom.xml             |  23 +++-
 extensions/groovy-actions/services/pom.xml         |   8 +-
 extensions/json-schema/rest/pom.xml                |  20 ++-
 extensions/json-schema/services/pom.xml            |  17 +--
 .../org/apache/unomi/schema/api/SchemaService.java |   9 +-
 .../unomi/schema/impl/SchemaServiceImpl.java       |   2 +-
 .../unomi/schema/listener/JsonSchemaListener.java  |   1 +
 extensions/lists-extension/rest/pom.xml            |   2 +-
 extensions/privacy-extension/rest/pom.xml          |   2 +-
 extensions/privacy-extension/services/pom.xml      |   2 +-
 extensions/router/router-api/pom.xml               |   2 +-
 extensions/router/router-core/pom.xml              |   6 +-
 .../rest/ImportConfigurationServiceEndPoint.java   |   1 -
 extensions/router/router-service/pom.xml           |   7 +-
 extensions/salesforce-connector/rest/pom.xml       |   2 +-
 extensions/salesforce-connector/services/pom.xml   |   2 +-
 .../unomi/sfdc/services/SFDCConfiguration.java     |  16 +--
 graphql/cxs-impl/pom.xml                           |  12 --
 .../commands/CreateOrUpdateTopicCommand.java       |   4 +-
 .../commands/DeleteAllPersonalDataCommand.java     |   4 +-
 .../commands/list/CreateOrUpdateListCommand.java   |   4 +-
 .../segments/BaseCreateOrUpdateSegmentCommand.java |   8 +-
 .../commands/segments/DeleteSegmentCommand.java    |   4 +-
 .../fetchers/BaseConnectionDataFetcher.java        |   4 +-
 .../unomi/graphql/fetchers/BaseDataFetcher.java    |   4 +-
 .../fetchers/profile/ProfileListsDataFetcher.java  |   3 +-
 .../providers/CompositeGraphQLFieldVisibility.java |  10 +-
 .../unomi/graphql/types/input/CDPOrderByInput.java |   4 +-
 .../output/property/CDPBooleanPropertyType.java    |   4 +-
 .../types/output/property/CDPDatePropertyType.java |   4 +-
 .../output/property/CDPFloatPropertyType.java      |   4 +-
 .../types/output/property/CDPIntPropertyType.java  |   4 +-
 .../types/output/property/CDPLongPropertyType.java |   4 +-
 .../unomi/graphql/utils/ConditionBuilder.java      |   8 +-
 graphql/karaf-feature/pom.xml                      |   5 -
 graphql/karaf-feature/src/main/feature/feature.xml |   2 -
 itests/pom.xml                                     |   4 +-
 .../test/java/org/apache/unomi/itests/BasicIT.java |   7 --
 .../apache/unomi/itests/ConditionEvaluatorIT.java  |   2 -
 .../unomi/itests/CopyPropertiesActionIT.java       |   4 -
 .../org/apache/unomi/itests/EventServiceIT.java    |   4 -
 .../unomi/itests/GroovyActionsServiceIT.java       |   6 -
 .../apache/unomi/itests/IncrementPropertyIT.java   |   5 -
 .../org/apache/unomi/itests/InputValidationIT.java |   9 --
 .../java/org/apache/unomi/itests/JSONSchemaIT.java |   5 -
 .../org/apache/unomi/itests/ModifyConsentIT.java   |   3 -
 .../test/java/org/apache/unomi/itests/PatchIT.java |   7 --
 .../org/apache/unomi/itests/ProfileExportIT.java   |   2 -
 .../apache/unomi/itests/ProfileImportActorsIT.java |   4 -
 .../apache/unomi/itests/ProfileImportBasicIT.java  |   4 -
 .../unomi/itests/ProfileImportRankingIT.java       |   5 -
 .../unomi/itests/ProfileImportSurfersIT.java       |   4 -
 .../itests/ProfileServiceWithoutOverwriteIT.java   |   6 -
 .../unomi/itests/PropertiesUpdateActionIT.java     |   5 -
 .../org/apache/unomi/itests/RuleServiceIT.java     |   3 -
 .../test/java/org/apache/unomi/itests/ScopeIT.java |   4 -
 .../java/org/apache/unomi/itests/SegmentIT.java    |   6 -
 .../org/apache/unomi/itests/SendEventActionIT.java |   4 -
 .../apache/unomi/itests/graphql/BaseGraphQLIT.java |   3 -
 .../unomi/itests/graphql/GraphQLEventIT.java       |   7 --
 .../apache/unomi/itests/graphql/GraphQLListIT.java |   4 -
 .../itests/graphql/GraphQLProfileAliasesIT.java    |   4 -
 .../unomi/itests/graphql/GraphQLProfileIT.java     |   4 -
 .../unomi/itests/graphql/GraphQLSegmentIT.java     |   5 -
 .../unomi/itests/graphql/GraphQLSourceIT.java      |   6 -
 .../unomi/itests/graphql/GraphQLTopicIT.java       |   5 -
 .../apache/unomi/itests/graphql/GraphQLViewIT.java |   8 --
 kar/pom.xml                                        |   8 +-
 kar/src/main/feature/feature.xml                   |  10 +-
 metrics/pom.xml                                    |   4 +-
 package/pom.xml                                    |   1 -
 persistence-elasticsearch/core/pom.xml             |  22 +---
 .../conditions/ConditionContextHelper.java         |  17 +--
 persistence-elasticsearch/pom.xml                  |   1 -
 persistence-spi/pom.xml                            |   6 +-
 plugins/baseplugin/pom.xml                         |  16 +--
 .../conditions/PropertyConditionEvaluator.java     |   6 +-
 plugins/kafka-injector/pom.xml                     |   2 +-
 plugins/mail/pom.xml                               |   2 +-
 pom.xml                                            | 136 ++++++---------------
 rest/pom.xml                                       |  25 ----
 samples/groovy-actions/pom.xml                     |   8 +-
 .../META-INF/cxs/actions/testGroovyAction.groovy   |   4 +-
 scripting/pom.xml                                  |   2 +-
 services/pom.xml                                   |   9 +-
 .../actions/impl/ActionExecutorDispatcherImpl.java |   2 -
 tools/shell-commands/pom.xml                       |  10 +-
 tools/shell-dev-commands/pom.xml                   |   2 +-
 wab/pom.xml                                        |  11 +-
 99 files changed, 211 insertions(+), 526 deletions(-)

diff --git a/api/pom.xml b/api/pom.xml
index 0c25a868f..9a76ed5ac 100644
--- a/api/pom.xml
+++ b/api/pom.xml
@@ -45,18 +45,10 @@
             <groupId>javax.validation</groupId>
             <artifactId>validation-api</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.hibernate</groupId>
-            <artifactId>hibernate-validator</artifactId>
-        </dependency>
         <dependency>
             <groupId>commons-beanutils</groupId>
             <artifactId>commons-beanutils</artifactId>
         </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
         <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-databind</artifactId>
diff --git a/api/src/main/java/org/apache/unomi/api/ContextRequest.java 
b/api/src/main/java/org/apache/unomi/api/ContextRequest.java
index 319afd005..3f7a10d79 100644
--- a/api/src/main/java/org/apache/unomi/api/ContextRequest.java
+++ b/api/src/main/java/org/apache/unomi/api/ContextRequest.java
@@ -24,9 +24,6 @@ import org.apache.unomi.api.services.EventListenerService;
 import org.apache.unomi.api.services.PersonalizationService;
 import org.apache.unomi.api.services.ProfileService;
 import org.apache.unomi.api.services.RulesService;
-import org.apache.unomi.api.utils.ValidationPattern;
-
-import javax.validation.constraints.Pattern;
 import java.util.List;
 import java.util.Map;
 
@@ -68,10 +65,8 @@ public class ContextRequest {
     private Profile profileOverrides;
     private Map<String, Object> sessionPropertiesOverrides;
 
-    @Pattern(regexp = ValidationPattern.TEXT_VALID_CHARACTERS_PATTERN)
     private String sessionId;
 
-    @Pattern(regexp = ValidationPattern.TEXT_VALID_CHARACTERS_PATTERN)
     private String profileId;
 
     private String clientId;
diff --git a/api/src/main/java/org/apache/unomi/api/EventsCollectorRequest.java 
b/api/src/main/java/org/apache/unomi/api/EventsCollectorRequest.java
index 74f922eec..bdf012de6 100644
--- a/api/src/main/java/org/apache/unomi/api/EventsCollectorRequest.java
+++ b/api/src/main/java/org/apache/unomi/api/EventsCollectorRequest.java
@@ -17,10 +17,6 @@
 
 package org.apache.unomi.api;
 
-import org.apache.unomi.api.utils.ValidationPattern;
-import org.hibernate.validator.constraints.NotEmpty;
-
-import javax.validation.constraints.Pattern;
 import java.util.List;
 
 /**
@@ -28,13 +24,10 @@ import java.util.List;
  */
 public class EventsCollectorRequest {
 
-    @NotEmpty
     private List<Event> events;
 
-    @Pattern(regexp = ValidationPattern.TEXT_VALID_CHARACTERS_PATTERN)
     private String sessionId;
 
-    @Pattern(regexp = ValidationPattern.TEXT_VALID_CHARACTERS_PATTERN)
     private String profileId;
 
     /**
diff --git 
a/api/src/main/java/org/apache/unomi/api/utils/ValidationPattern.java 
b/api/src/main/java/org/apache/unomi/api/utils/ValidationPattern.java
deleted file mode 100644
index 61c74d6d3..000000000
--- a/api/src/main/java/org/apache/unomi/api/utils/ValidationPattern.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.unomi.api.utils;
-
-public class ValidationPattern {
-
-    public static final String TEXT_VALID_CHARACTERS_PATTERN = 
"^(\\w|[-_@\\.]){0,60}$";
-}
diff --git a/common/pom.xml b/common/pom.xml
index 1540bc28e..f871f5d26 100644
--- a/common/pom.xml
+++ b/common/pom.xml
@@ -65,10 +65,9 @@
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-simple</artifactId>
-            <version>1.6.6</version>
+            <version>1.7.36</version>
             <scope>test</scope>
         </dependency>
-
     </dependencies>
 
     <build>
diff --git a/extensions/geonames/rest/pom.xml b/extensions/geonames/rest/pom.xml
index dd5dd64f9..9378acfa4 100644
--- a/extensions/geonames/rest/pom.xml
+++ b/extensions/geonames/rest/pom.xml
@@ -86,4 +86,4 @@
         </dependency>
     </dependencies>
 
-</project>
\ No newline at end of file
+</project>
diff --git 
a/extensions/geonames/rest/src/main/java/org/apache/unomi/geonames/rest/GeonamesEndPoint.java
 
b/extensions/geonames/rest/src/main/java/org/apache/unomi/geonames/rest/GeonamesEndPoint.java
index e53216fe6..f16e31a54 100644
--- 
a/extensions/geonames/rest/src/main/java/org/apache/unomi/geonames/rest/GeonamesEndPoint.java
+++ 
b/extensions/geonames/rest/src/main/java/org/apache/unomi/geonames/rest/GeonamesEndPoint.java
@@ -17,7 +17,7 @@
 
 package org.apache.unomi.geonames.rest;
 
-import org.apache.cxf.common.util.StringUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.cxf.rs.security.cors.CrossOriginResourceSharing;
 import org.apache.unomi.api.PartialList;
 import org.apache.unomi.geonames.services.GeonameEntry;
@@ -113,7 +113,7 @@ public class GeonamesEndPoint {
         for (GeonameEntry entry : l) {
             if 
(GeonamesService.COUNTRY_FEATURE_CODES.contains(entry.getFeatureCode())) {
                 String name = new Locale("", 
entry.getCountryCode()).getDisplayCountry(locale);
-                if (!StringUtils.isEmpty(name) && 
!name.equals(entry.getCountryCode())) {
+                if (StringUtils.isNotEmpty(name) && 
!name.equals(entry.getCountryCode())) {
                     entry.setName(name);
                 }
             }
diff --git a/extensions/geonames/services/pom.xml 
b/extensions/geonames/services/pom.xml
index a24712287..7e04c561c 100644
--- a/extensions/geonames/services/pom.xml
+++ b/extensions/geonames/services/pom.xml
@@ -56,11 +56,6 @@
             <groupId>commons-beanutils</groupId>
             <artifactId>commons-beanutils</artifactId>
         </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
-
     </dependencies>
 
     <build>
diff --git 
a/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonamesServiceImpl.java
 
b/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonamesServiceImpl.java
index 41aa22e84..9d4cd9a2e 100644
--- 
a/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonamesServiceImpl.java
+++ 
b/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonamesServiceImpl.java
@@ -196,10 +196,10 @@ public class GeonamesServiceImpl implements 
GeonamesService {
 
         PartialList<GeonameEntry> country = buildHierarchy(andCondition, 
featureCodeCondition, "countryCode", entry.getCountryCode(), 
COUNTRY_FEATURE_CODES, 0, 1);
 
-        if (!StringUtils.isEmpty(entry.getAdmin1Code())) {
+        if (StringUtils.isNotEmpty(entry.getAdmin1Code())) {
             PartialList<GeonameEntry> adm1 = buildHierarchy(andCondition, 
featureCodeCondition, "admin1Code", entry.getAdmin1Code(), ADM1_FEATURE_CODES, 
0, 1);
 
-            if (!StringUtils.isEmpty(entry.getAdmin2Code())) {
+            if (StringUtils.isNotEmpty(entry.getAdmin2Code())) {
                 PartialList<GeonameEntry> adm2 = buildHierarchy(andCondition, 
featureCodeCondition, "admin2Code", entry.getAdmin2Code(), ADM2_FEATURE_CODES, 
0, 1);
 
                 if (!adm2.getList().isEmpty()) {
diff --git a/extensions/groovy-actions/karaf-kar/src/main/feature/feature.xml 
b/extensions/groovy-actions/karaf-kar/src/main/feature/feature.xml
index 649b74097..b3e0783cb 100644
--- a/extensions/groovy-actions/karaf-kar/src/main/feature/feature.xml
+++ b/extensions/groovy-actions/karaf-kar/src/main/feature/feature.xml
@@ -20,9 +20,9 @@
         <details>${project.description}</details>
         <feature>wrap</feature>
         <feature>unomi-kar</feature>
-        <bundle 
start-level="85">mvn:org.codehaus.groovy/groovy/${groovy.version}</bundle>
-        <bundle 
start-level="85">mvn:org.codehaus.groovy/groovy-xml/${groovy.version}</bundle>
-        <bundle 
start-level="85">mvn:org.codehaus.groovy/groovy-json/${groovy.version}</bundle>
+        <bundle 
start-level="85">mvn:org.apache.groovy/groovy/${groovy.version}</bundle>
+        <bundle 
start-level="85">mvn:org.apache.groovy/groovy-xml/${groovy.version}</bundle>
+        <bundle 
start-level="85">mvn:org.apache.groovy/groovy-json/${groovy.version}</bundle>
         <bundle 
start-level="85">wrap:mvn:io.github.http-builder-ng/http-builder-ng-core/1.0.4</bundle>
         <bundle start-level="85">mvn:org.jsoup/jsoup/1.13.1</bundle>
         <bundle 
start-level="85">mvn:com.sun.activation/javax.activation/1.2.0</bundle>
diff --git a/extensions/groovy-actions/rest/pom.xml 
b/extensions/groovy-actions/rest/pom.xml
index 9347a2d91..bb70de0b9 100644
--- a/extensions/groovy-actions/rest/pom.xml
+++ b/extensions/groovy-actions/rest/pom.xml
@@ -16,7 +16,8 @@
   ~ limitations under the License.
   -->
 
-<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
+<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
     <parent>
         <groupId>org.apache.unomi</groupId>
         <artifactId>unomi-groovy-actions-root</artifactId>
@@ -26,7 +27,8 @@
 
     <artifactId>unomi-groovy-actions-rest</artifactId>
     <name>Apache Unomi :: Extensions :: Groovy Actions :: REST API</name>
-    <description>REST API for the Apache Unomi Context Server extension that 
integrates with groovy actions</description>
+    <description>REST API for the Apache Unomi Context Server extension that 
integrates with groovy actions
+    </description>
     <packaging>bundle</packaging>
 
     <dependencies>
@@ -91,4 +93,21 @@
             <artifactId>commons-io</artifactId>
         </dependency>
     </dependencies>
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-bundle-plugin</artifactId>
+                <extensions>true</extensions>
+                <configuration>
+                    <instructions>
+                        <Import-Package>
+                            sun.nio.ch;resolution:=optional,
+                            *
+                        </Import-Package>
+                    </instructions>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
 </project>
diff --git a/extensions/groovy-actions/services/pom.xml 
b/extensions/groovy-actions/services/pom.xml
index 71c14bedb..1f64f3c24 100644
--- a/extensions/groovy-actions/services/pom.xml
+++ b/extensions/groovy-actions/services/pom.xml
@@ -79,13 +79,13 @@
             <scope>provided</scope>
         </dependency>
         <dependency>
-            <groupId>org.codehaus.groovy</groupId>
+            <groupId>org.apache.groovy</groupId>
             <artifactId>groovy</artifactId>
             <version>${groovy.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
-            <groupId>org.codehaus.groovy</groupId>
+            <groupId>org.apache.groovy</groupId>
             <artifactId>groovy-json</artifactId>
             <version>${groovy.version}</version>
             <scope>provided</scope>
@@ -104,6 +104,10 @@
                 <extensions>true</extensions>
                 <configuration>
                     <instructions>
+                        <Import-Package>
+                            sun.nio.ch;resolution:=optional,
+                            *
+                        </Import-Package>
                         <_dsannotations>*</_dsannotations>
                         
<Embed-Dependency>*;scope=compile|runtime</Embed-Dependency>
                         
<Unomi-Source-Folders>${project.basedir}</Unomi-Source-Folders>
diff --git a/extensions/json-schema/rest/pom.xml 
b/extensions/json-schema/rest/pom.xml
index 48f45e65e..bf4ed8fe8 100644
--- a/extensions/json-schema/rest/pom.xml
+++ b/extensions/json-schema/rest/pom.xml
@@ -16,7 +16,8 @@
   ~ limitations under the License.
   -->
 
-<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
+<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
     <parent>
         <groupId>org.apache.unomi</groupId>
         <artifactId>unomi-json-schema-root</artifactId>
@@ -92,4 +93,21 @@
             <artifactId>commons-io</artifactId>
         </dependency>
     </dependencies>
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-bundle-plugin</artifactId>
+                <extensions>true</extensions>
+                <configuration>
+                    <instructions>
+                        <Import-Package>
+                            sun.nio.ch;resolution:=optional,
+                            *
+                        </Import-Package>
+                    </instructions>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
 </project>
diff --git a/extensions/json-schema/services/pom.xml 
b/extensions/json-schema/services/pom.xml
index d6aae8fdf..4d5d44570 100644
--- a/extensions/json-schema/services/pom.xml
+++ b/extensions/json-schema/services/pom.xml
@@ -32,7 +32,7 @@
 
     <properties>
         <version.schema>1.0.86</version.schema>
-        <version.schema.jackson>2.14.2</version.schema.jackson>
+        <version.schema.jackson>2.17.1</version.schema.jackson>
         <version.schema.itu>1.7.0</version.schema.itu>
     </properties>
 
@@ -80,12 +80,6 @@
                 </exclusion>
             </exclusions>
         </dependency>
-        <dependency>
-            <groupId>com.ethlo.time</groupId>
-            <artifactId>itu</artifactId>
-            <version>${version.schema.itu}</version>
-            <scope>compile</scope>
-        </dependency>
         <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-core</artifactId>
@@ -110,10 +104,16 @@
             <version>${version.schema.jackson}</version>
             <scope>compile</scope>
         </dependency>
+        <dependency>
+            <groupId>com.ethlo.time</groupId>
+            <artifactId>itu</artifactId>
+            <version>${version.schema.itu}</version>
+            <scope>compile</scope>
+        </dependency>
         <dependency>
             <groupId>org.yaml</groupId>
             <artifactId>snakeyaml</artifactId>
-            <version>1.33</version>
+            <version>2.2</version>
             <scope>compile</scope>
         </dependency>
     </dependencies>
@@ -137,6 +137,7 @@
                             org.jcodings.specific;resolution:=optional,
                             org.joni;resolution:=optional,
                             org.joni.exception;resolution:=optional,
+                            sun.nio.ch;resolution:=optional,
                             *
                         </Import-Package>
                     </instructions>
diff --git 
a/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/api/SchemaService.java
 
b/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/api/SchemaService.java
index 162ecbe77..f526ebda6 100644
--- 
a/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/api/SchemaService.java
+++ 
b/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/api/SchemaService.java
@@ -32,7 +32,7 @@ public interface SchemaService {
      * Verify if a jsonNode is valid against a schema
      * (This method is fail safe, if unexpected errors happens it will returns 
false)
      *
-     * @param data   to validate
+     * @param data     to validate
      * @param schemaId id of the schema used for the validation
      * @return true is the object is valid, false otherwise, false also in 
case of unexpected errors !
      */
@@ -71,7 +71,7 @@ public interface SchemaService {
      * @return The Map of validation errors group per event type in case there 
is some, empty map otherwise
      * @throws ValidationException in case something goes wrong and validation 
could not be performed.
      */
-    Map<String,Set<ValidationError>> validateEvents(String events) throws 
ValidationException;
+    Map<String, Set<ValidationError>> validateEvents(String events) throws 
ValidationException;
 
     /**
      * Get the list of installed Json Schema Ids
@@ -133,4 +133,9 @@ public interface SchemaService {
      * @return true if the schema has been deleted
      */
     boolean unloadPredefinedSchema(InputStream schemaStream);
+
+    /**
+     * Refresh the JSON schemas
+     */
+    void refreshJSONSchemas();
 }
diff --git 
a/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/impl/SchemaServiceImpl.java
 
b/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/impl/SchemaServiceImpl.java
index 437274c76..e30231c92 100644
--- 
a/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/impl/SchemaServiceImpl.java
+++ 
b/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/impl/SchemaServiceImpl.java
@@ -298,7 +298,7 @@ public class SchemaServiceImpl implements SchemaService {
         return new JsonSchemaWrapper(schemaId, schema, target, name, 
extendsSchemaId, new Date());
     }
 
-    private void refreshJSONSchemas() {
+    public void refreshJSONSchemas() {
         // use local variable to avoid concurrency issues.
         Map<String, JsonSchemaWrapper> schemasByIdReloaded = new HashMap<>();
         schemasByIdReloaded.putAll(predefinedUnomiJSONSchemaById);
diff --git 
a/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/listener/JsonSchemaListener.java
 
b/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/listener/JsonSchemaListener.java
index fda47dd85..6a613292e 100644
--- 
a/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/listener/JsonSchemaListener.java
+++ 
b/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/listener/JsonSchemaListener.java
@@ -61,6 +61,7 @@ public class JsonSchemaListener implements 
SynchronousBundleListener {
                 loadPredefinedSchemas(bundle.getBundleContext(), true);
             }
         }
+        schemaService.refreshJSONSchemas();
 
         bundleContext.addBundleListener(this);
         logger.info("JSON schema listener initialized.");
diff --git a/extensions/lists-extension/rest/pom.xml 
b/extensions/lists-extension/rest/pom.xml
index 9006da67d..25dee4a88 100644
--- a/extensions/lists-extension/rest/pom.xml
+++ b/extensions/lists-extension/rest/pom.xml
@@ -87,4 +87,4 @@
         </dependency>
     </dependencies>
 
-</project>
\ No newline at end of file
+</project>
diff --git a/extensions/privacy-extension/rest/pom.xml 
b/extensions/privacy-extension/rest/pom.xml
index 1119b7c91..f3924ef9d 100644
--- a/extensions/privacy-extension/rest/pom.xml
+++ b/extensions/privacy-extension/rest/pom.xml
@@ -107,4 +107,4 @@
         </plugins>
     </build>
 
-</project>
\ No newline at end of file
+</project>
diff --git a/extensions/privacy-extension/services/pom.xml 
b/extensions/privacy-extension/services/pom.xml
index aa4b4f58a..3acd5bdfd 100644
--- a/extensions/privacy-extension/services/pom.xml
+++ b/extensions/privacy-extension/services/pom.xml
@@ -79,4 +79,4 @@
             </plugin>
         </plugins>
     </build>
-</project>
\ No newline at end of file
+</project>
diff --git a/extensions/router/router-api/pom.xml 
b/extensions/router/router-api/pom.xml
index c6294d056..448434e53 100644
--- a/extensions/router/router-api/pom.xml
+++ b/extensions/router/router-api/pom.xml
@@ -38,4 +38,4 @@
     </dependencies>
 
 
-</project>
\ No newline at end of file
+</project>
diff --git a/extensions/router/router-core/pom.xml 
b/extensions/router/router-core/pom.xml
index e2096ced1..ea61f411b 100644
--- a/extensions/router/router-core/pom.xml
+++ b/extensions/router/router-core/pom.xml
@@ -106,10 +106,6 @@
             <artifactId>commons-net</artifactId>
             <version>3.5</version>
         </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
         <dependency>
             <groupId>commons-beanutils</groupId>
             <artifactId>commons-beanutils</artifactId>
@@ -220,4 +216,4 @@
 
 
 
-</project>
\ No newline at end of file
+</project>
diff --git 
a/extensions/router/router-rest/src/main/java/org/apache/unomi/router/rest/ImportConfigurationServiceEndPoint.java
 
b/extensions/router/router-rest/src/main/java/org/apache/unomi/router/rest/ImportConfigurationServiceEndPoint.java
index ad943e9fa..db0f15159 100644
--- 
a/extensions/router/router-rest/src/main/java/org/apache/unomi/router/rest/ImportConfigurationServiceEndPoint.java
+++ 
b/extensions/router/router-rest/src/main/java/org/apache/unomi/router/rest/ImportConfigurationServiceEndPoint.java
@@ -20,7 +20,6 @@ import org.apache.cxf.jaxrs.ext.multipart.Attachment;
 import org.apache.cxf.jaxrs.ext.multipart.Multipart;
 import org.apache.cxf.rs.security.cors.CrossOriginResourceSharing;
 import org.apache.unomi.api.services.ConfigSharingService;
-import org.apache.unomi.api.utils.ValidationPattern;
 import org.apache.unomi.router.api.ImportConfiguration;
 import org.apache.unomi.router.api.RouterConstants;
 import org.apache.unomi.router.api.services.ImportExportConfigurationService;
diff --git a/extensions/router/router-service/pom.xml 
b/extensions/router/router-service/pom.xml
index 3b37d1667..a34a088b8 100644
--- a/extensions/router/router-service/pom.xml
+++ b/extensions/router/router-service/pom.xml
@@ -85,11 +85,6 @@
             <groupId>commons-beanutils</groupId>
             <artifactId>commons-beanutils</artifactId>
         </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
-
         <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-lang3</artifactId>
@@ -98,4 +93,4 @@
     </dependencies>
 
 
-</project>
\ No newline at end of file
+</project>
diff --git a/extensions/salesforce-connector/rest/pom.xml 
b/extensions/salesforce-connector/rest/pom.xml
index b60053fb0..193540a02 100644
--- a/extensions/salesforce-connector/rest/pom.xml
+++ b/extensions/salesforce-connector/rest/pom.xml
@@ -150,4 +150,4 @@
         </plugins>
     </build>
 
-</project>
\ No newline at end of file
+</project>
diff --git a/extensions/salesforce-connector/services/pom.xml 
b/extensions/salesforce-connector/services/pom.xml
index 8f57d5be0..7c80fa680 100644
--- a/extensions/salesforce-connector/services/pom.xml
+++ b/extensions/salesforce-connector/services/pom.xml
@@ -110,7 +110,7 @@
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-simple</artifactId>
-            <version>1.6.6</version>
+            <version>1.7.36</version>
             <scope>test</scope>
         </dependency>
         <dependency>
diff --git 
a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
 
b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
index 94495c800..6bc91cd09 100644
--- 
a/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
+++ 
b/extensions/salesforce-connector/services/src/main/java/org/apache/unomi/sfdc/services/SFDCConfiguration.java
@@ -16,7 +16,7 @@
  */
 package org.apache.unomi.sfdc.services;
 
-import org.apache.cxf.common.util.StringUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.unomi.api.Item;
 
 import java.util.HashMap;
@@ -176,13 +176,13 @@ public class SFDCConfiguration extends Item {
     }
 
     public boolean isComplete() {
-        return (!StringUtils.isEmpty(sfdcLoginEndpoint) &&
-                !StringUtils.isEmpty(sfdcUserUsername) &&
-                !StringUtils.isEmpty(sfdcUserPassword) &&
-                !StringUtils.isEmpty(sfdcUserSecurityToken) &&
-                !StringUtils.isEmpty(sfdcConsumerKey) &&
-                !StringUtils.isEmpty(sfdcConsumerSecret) &&
-                !StringUtils.isEmpty(sfdcFieldMappingsIdentifier));
+        return (StringUtils.isNotEmpty(sfdcLoginEndpoint) &&
+                StringUtils.isNotEmpty(sfdcUserUsername) &&
+                StringUtils.isNotEmpty(sfdcUserPassword) &&
+                StringUtils.isNotEmpty(sfdcUserSecurityToken) &&
+                StringUtils.isNotEmpty(sfdcConsumerKey) &&
+                StringUtils.isNotEmpty(sfdcConsumerSecret) &&
+                StringUtils.isNotEmpty(sfdcFieldMappingsIdentifier));
     }
 
 }
diff --git a/graphql/cxs-impl/pom.xml b/graphql/cxs-impl/pom.xml
index 273ab7d31..cc446d59a 100644
--- a/graphql/cxs-impl/pom.xml
+++ b/graphql/cxs-impl/pom.xml
@@ -39,12 +39,6 @@
             <artifactId>javax.servlet-api</artifactId>
             <scope>provided</scope>
         </dependency>
-        <dependency>
-            <groupId>com.google.guava</groupId>
-            <artifactId>guava</artifactId>
-            <version>24.1.1-jre</version>
-            <scope>provided</scope>
-        </dependency>
         <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-core</artifactId>
@@ -123,12 +117,6 @@
             <version>1.2.4</version>
             <scope>provided</scope>
         </dependency>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-api</artifactId>
-            <version>1.7.21</version>
-            <scope>provided</scope>
-        </dependency>
         <dependency>
             <groupId>org.apache.unomi</groupId>
             <artifactId>unomi-api</artifactId>
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/CreateOrUpdateTopicCommand.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/CreateOrUpdateTopicCommand.java
index 835b61304..a468d7254 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/CreateOrUpdateTopicCommand.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/CreateOrUpdateTopicCommand.java
@@ -16,7 +16,7 @@
  */
 package org.apache.unomi.graphql.commands;
 
-import com.google.common.base.Strings;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.unomi.api.Topic;
 import org.apache.unomi.api.services.TopicService;
 import org.apache.unomi.graphql.types.input.CDPTopicInput;
@@ -44,7 +44,7 @@ public class CreateOrUpdateTopicCommand extends 
BaseCommand<CDPTopic> {
             topic = new Topic();
         }
 
-        final String topicId = Strings.isNullOrEmpty(topicInput.getId())
+        final String topicId = StringUtils.isEmpty(topicInput.getId())
                 ? topicInput.getName()
                 : topicInput.getId();
 
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/DeleteAllPersonalDataCommand.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/DeleteAllPersonalDataCommand.java
index 46a1b32dd..3e599d127 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/DeleteAllPersonalDataCommand.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/DeleteAllPersonalDataCommand.java
@@ -16,7 +16,7 @@
  */
 package org.apache.unomi.graphql.commands;
 
-import com.google.common.base.Strings;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.services.PrivacyService;
 import org.apache.unomi.api.services.ProfileService;
@@ -67,7 +67,7 @@ public class DeleteAllPersonalDataCommand extends 
BaseCommand<Boolean> {
 
             final String personaId = (String) cdpProfileIDInput.get("id");
 
-            if (Strings.isNullOrEmpty(personaId)) {
+            if (StringUtils.isEmpty(personaId)) {
                 throw new IllegalArgumentException("The \"id\" variable can 
not be null or empty");
             }
         }
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/list/CreateOrUpdateListCommand.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/list/CreateOrUpdateListCommand.java
index 1a64a7975..a12a51eb0 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/list/CreateOrUpdateListCommand.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/list/CreateOrUpdateListCommand.java
@@ -16,7 +16,7 @@
  */
 package org.apache.unomi.graphql.commands.list;
 
-import com.google.common.base.Strings;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.unomi.api.Metadata;
 import org.apache.unomi.graphql.commands.BaseCommand;
 import org.apache.unomi.graphql.converters.UserListConverter;
@@ -41,7 +41,7 @@ public class CreateOrUpdateListCommand extends 
BaseCommand<CDPList> {
     public CDPList execute() {
         final UserListService userListService = 
serviceManager.getService(UserListService.class);
 
-        final String listId = Strings.isNullOrEmpty(listInput.getId())
+        final String listId = StringUtils.isEmpty(listInput.getId())
                 ? listInput.getName()
                 : listInput.getId();
 
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/segments/BaseCreateOrUpdateSegmentCommand.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/segments/BaseCreateOrUpdateSegmentCommand.java
index 70563b513..13458da02 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/segments/BaseCreateOrUpdateSegmentCommand.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/segments/BaseCreateOrUpdateSegmentCommand.java
@@ -16,7 +16,7 @@
  */
 package org.apache.unomi.graphql.commands.segments;
 
-import com.google.common.base.Strings;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.unomi.api.Metadata;
 import org.apache.unomi.api.segments.Segment;
 import org.apache.unomi.api.services.SegmentService;
@@ -36,7 +36,7 @@ public abstract class BaseCreateOrUpdateSegmentCommand<INPUT 
extends BaseSegment
     protected Segment preparedSegmentWithoutCondition(final INPUT 
segmentInput) {
         final SegmentService segmentService = 
serviceManager.getService(SegmentService.class);
 
-        final String segmentId = Strings.isNullOrEmpty(segmentInput.getId())
+        final String segmentId = StringUtils.isEmpty(segmentInput.getId())
                 ? segmentInput.getName()
                 : segmentInput.getId();
 
@@ -90,10 +90,10 @@ public abstract class 
BaseCreateOrUpdateSegmentCommand<INPUT extends BaseSegment
             if (segmentInput == null) {
                 throw new IllegalArgumentException();
             }
-            if (Strings.isNullOrEmpty(segmentInput.getName())) {
+            if (StringUtils.isEmpty(segmentInput.getName())) {
                 throw new IllegalArgumentException();
             }
-            if (Strings.isNullOrEmpty(segmentInput.getView())) {
+            if (StringUtils.isEmpty(segmentInput.getView())) {
                 throw new IllegalArgumentException();
             }
         }
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/segments/DeleteSegmentCommand.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/segments/DeleteSegmentCommand.java
index c00c5e8db..2b54be221 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/segments/DeleteSegmentCommand.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/commands/segments/DeleteSegmentCommand.java
@@ -16,7 +16,7 @@
  */
 package org.apache.unomi.graphql.commands.segments;
 
-import com.google.common.base.Strings;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.unomi.api.segments.DependentMetadata;
 import org.apache.unomi.api.services.SegmentService;
 import org.apache.unomi.graphql.commands.BaseCommand;
@@ -54,7 +54,7 @@ public class DeleteSegmentCommand extends 
BaseCommand<Boolean> {
         public void validate() {
             super.validate();
 
-            if (Strings.isNullOrEmpty(segmentId)) {
+            if (StringUtils.isEmpty(segmentId)) {
                 throw new IllegalArgumentException("The \"segmentID\" variable 
can not be null or empty");
             }
         }
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/fetchers/BaseConnectionDataFetcher.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/fetchers/BaseConnectionDataFetcher.java
index f8d2f28da..e7652818f 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/fetchers/BaseConnectionDataFetcher.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/fetchers/BaseConnectionDataFetcher.java
@@ -17,8 +17,8 @@
 
 package org.apache.unomi.graphql.fetchers;
 
-import com.google.common.base.Strings;
 import graphql.schema.DataFetchingEnvironment;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.unomi.api.conditions.Condition;
 import org.apache.unomi.api.query.Query;
 import org.apache.unomi.graphql.types.input.CDPOrderByInput;
@@ -53,7 +53,7 @@ public abstract class BaseConnectionDataFetcher<T> extends 
BaseDataFetcher<T> {
                     .map(CDPOrderByInput::asString)
                     .collect(Collectors.joining(","));
 
-            if (!Strings.isNullOrEmpty(sortBy)) {
+            if (StringUtils.isNotEmpty(sortBy)) {
                 query.setSortby(sortBy);
             }
         }
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/fetchers/BaseDataFetcher.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/fetchers/BaseDataFetcher.java
index 629d50ac5..c6c30bf5d 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/fetchers/BaseDataFetcher.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/fetchers/BaseDataFetcher.java
@@ -17,7 +17,7 @@
 
 package org.apache.unomi.graphql.fetchers;
 
-import com.google.common.base.Strings;
+import org.apache.commons.lang3.StringUtils;
 import graphql.schema.DataFetcher;
 import graphql.schema.DataFetchingEnvironment;
 import org.apache.unomi.graphql.utils.GraphQLObjectMapper;
@@ -48,7 +48,7 @@ public abstract class BaseDataFetcher<T> implements 
DataFetcher<T> {
     protected Date parseDateParam(final String name, final 
DataFetchingEnvironment environment) {
         final String paramValue = environment.getArgument(name);
         Date param = null;
-        if (!Strings.isNullOrEmpty(paramValue)) {
+        if (StringUtils.isNotEmpty(paramValue)) {
             try {
                 param = DateFormat.getInstance().parse(paramValue);
             } catch (ParseException e) {
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/fetchers/profile/ProfileListsDataFetcher.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/fetchers/profile/ProfileListsDataFetcher.java
index f5d91eb91..656be59cf 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/fetchers/profile/ProfileListsDataFetcher.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/fetchers/profile/ProfileListsDataFetcher.java
@@ -17,7 +17,6 @@
 
 package org.apache.unomi.graphql.fetchers.profile;
 
-import com.google.common.collect.Iterables;
 import graphql.schema.DataFetchingEnvironment;
 import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.lists.UserList;
@@ -67,7 +66,7 @@ public class ProfileListsDataFetcher extends 
BaseDataFetcher<List<CDPList>> {
         }
 
         return stream.map(viewId -> {
-            final UserList list = Iterables.tryFind(userLists, userList -> 
viewId.equals(userList.getItemId())).orNull();
+            final UserList list =  userLists.stream().filter(userList -> 
viewId.equals(userList.getItemId())).findFirst().orElse(null);
             return list != null ? new CDPList(list) : null;
         }).filter(Objects::nonNull).collect(Collectors.toList());
     }
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/providers/CompositeGraphQLFieldVisibility.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/providers/CompositeGraphQLFieldVisibility.java
index d30431485..c5965cd82 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/providers/CompositeGraphQLFieldVisibility.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/providers/CompositeGraphQLFieldVisibility.java
@@ -17,7 +17,6 @@
 
 package org.apache.unomi.graphql.providers;
 
-import com.google.common.collect.Lists;
 import graphql.schema.GraphQLFieldDefinition;
 import graphql.schema.GraphQLFieldsContainer;
 import graphql.schema.GraphQLInputFieldsContainer;
@@ -25,6 +24,7 @@ import graphql.schema.GraphQLInputObjectField;
 import graphql.schema.GraphQLNamedSchemaElement;
 import graphql.schema.visibility.GraphqlFieldVisibility;
 
+import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.List;
 import java.util.Objects;
@@ -44,12 +44,12 @@ public class CompositeGraphQLFieldVisibility implements 
GraphqlFieldVisibility {
     @Override
     public List<GraphQLFieldDefinition> 
getFieldDefinitions(GraphQLFieldsContainer fieldsContainer) {
         if (providers == null) {
-            return Lists.newArrayList();
+            return new ArrayList<>();
         }
         return providers.stream().
                 map(provider -> 
provider.getGraphQLFieldVisibility().getFieldDefinitions(fieldsContainer)).
                 reduce(CompositeGraphQLFieldVisibility::intersect).
-                orElse(Lists.newArrayList());
+                orElse(new ArrayList<>());
     }
 
     @Override
@@ -67,12 +67,12 @@ public class CompositeGraphQLFieldVisibility implements 
GraphqlFieldVisibility {
     @Override
     public List<GraphQLInputObjectField> 
getFieldDefinitions(GraphQLInputFieldsContainer fieldsContainer) {
         if (providers == null) {
-            return Lists.newArrayList();
+            return new ArrayList<>();
         }
         return providers.stream().
                 map(provider -> 
provider.getGraphQLFieldVisibility().getFieldDefinitions(fieldsContainer)).
                 reduce(CompositeGraphQLFieldVisibility::intersect).
-                orElse(Lists.newArrayList());
+                orElse(new ArrayList<>());
     }
 
     @Override
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CDPOrderByInput.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CDPOrderByInput.java
index 84d770400..9c9d749c5 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CDPOrderByInput.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CDPOrderByInput.java
@@ -16,9 +16,9 @@
  */
 package org.apache.unomi.graphql.types.input;
 
-import com.google.common.base.Strings;
 import graphql.annotations.annotationTypes.GraphQLField;
 import graphql.annotations.annotationTypes.GraphQLName;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.unomi.graphql.types.output.CDPSortOrder;
 
 @GraphQLName("CDP_OrderByInput")
@@ -46,7 +46,7 @@ public class CDPOrderByInput {
     }
 
     public String asString() {
-        if (Strings.isNullOrEmpty(fieldName)) {
+        if (StringUtils.isEmpty(fieldName)) {
             return null;
         } else if (sortOrder == null || CDPSortOrder.UNSPECIFIED == sortOrder) 
{
             return fieldName;
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPBooleanPropertyType.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPBooleanPropertyType.java
index 50ab062d6..fe1ebe6e1 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPBooleanPropertyType.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPBooleanPropertyType.java
@@ -16,7 +16,7 @@
  */
 package org.apache.unomi.graphql.types.output.property;
 
-import com.google.common.base.Strings;
+import org.apache.commons.lang3.StringUtils;
 import graphql.annotations.annotationTypes.GraphQLField;
 import graphql.annotations.annotationTypes.GraphQLName;
 import org.apache.unomi.api.PropertyType;
@@ -38,6 +38,6 @@ public class CDPBooleanPropertyType extends CDPPropertyType 
implements CDPProper
     @GraphQLField
     public Boolean defaultValue() {
         final String defaultValue = type.getDefaultValue();
-        return !Strings.isNullOrEmpty(defaultValue) ? 
Boolean.valueOf(defaultValue) : null;
+        return StringUtils.isNotEmpty(defaultValue) ? 
Boolean.valueOf(defaultValue) : null;
     }
 }
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPDatePropertyType.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPDatePropertyType.java
index 2187ece18..07ccd9e63 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPDatePropertyType.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPDatePropertyType.java
@@ -16,7 +16,7 @@
  */
 package org.apache.unomi.graphql.types.output.property;
 
-import com.google.common.base.Strings;
+import org.apache.commons.lang3.StringUtils;
 import graphql.annotations.annotationTypes.GraphQLField;
 import graphql.annotations.annotationTypes.GraphQLName;
 import org.apache.unomi.api.PropertyType;
@@ -43,6 +43,6 @@ public class CDPDatePropertyType extends CDPPropertyType 
implements CDPPropertyI
             return null;
         }
         final String defaultValue = type.getDefaultValue();
-        return !Strings.isNullOrEmpty(defaultValue) ? 
OffsetDateTime.parse(defaultValue) : null;
+        return StringUtils.isNotEmpty(defaultValue) ? 
OffsetDateTime.parse(defaultValue) : null;
     }
 }
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPFloatPropertyType.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPFloatPropertyType.java
index a6fb10eed..376d9eb0b 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPFloatPropertyType.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPFloatPropertyType.java
@@ -16,7 +16,7 @@
  */
 package org.apache.unomi.graphql.types.output.property;
 
-import com.google.common.base.Strings;
+import org.apache.commons.lang3.StringUtils;
 import graphql.annotations.annotationTypes.GraphQLField;
 import graphql.annotations.annotationTypes.GraphQLName;
 import org.apache.unomi.api.PropertyType;
@@ -57,6 +57,6 @@ public class CDPFloatPropertyType extends CDPPropertyType 
implements CDPProperty
             return null;
         }
         final String defaultValue = type.getDefaultValue();
-        return !Strings.isNullOrEmpty(defaultValue) ? 
Double.valueOf(defaultValue) : null;
+        return StringUtils.isNotEmpty(defaultValue) ? 
Double.valueOf(defaultValue) : null;
     }
 }
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPIntPropertyType.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPIntPropertyType.java
index 7ec7b79d7..427f8a1a7 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPIntPropertyType.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPIntPropertyType.java
@@ -16,9 +16,9 @@
  */
 package org.apache.unomi.graphql.types.output.property;
 
-import com.google.common.base.Strings;
 import graphql.annotations.annotationTypes.GraphQLField;
 import graphql.annotations.annotationTypes.GraphQLName;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.unomi.api.PropertyType;
 import org.apache.unomi.api.query.NumericRange;
 import org.apache.unomi.graphql.types.output.CDPPropertyInterface;
@@ -59,6 +59,6 @@ public class CDPIntPropertyType extends CDPPropertyType 
implements CDPPropertyIn
             return null;
         }
         final String defaultValue = type.getDefaultValue();
-        return !Strings.isNullOrEmpty(defaultValue) ? 
Integer.valueOf(defaultValue) : null;
+        return StringUtils.isNotEmpty(defaultValue) ? 
Integer.valueOf(defaultValue) : null;
     }
 }
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPLongPropertyType.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPLongPropertyType.java
index d4ab640f2..c59ed503c 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPLongPropertyType.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/property/CDPLongPropertyType.java
@@ -16,7 +16,7 @@
  */
 package org.apache.unomi.graphql.types.output.property;
 
-import com.google.common.base.Strings;
+import org.apache.commons.lang3.StringUtils;
 import graphql.annotations.annotationTypes.GraphQLField;
 import graphql.annotations.annotationTypes.GraphQLName;
 import org.apache.unomi.api.PropertyType;
@@ -59,6 +59,6 @@ public class CDPLongPropertyType extends CDPPropertyType 
implements CDPPropertyI
             return null;
         }
         final String defaultValue = type.getDefaultValue();
-        return !Strings.isNullOrEmpty(defaultValue) ? 
Long.valueOf(defaultValue) : null;
+        return StringUtils.isNotEmpty(defaultValue) ? 
Long.valueOf(defaultValue) : null;
     }
 }
diff --git 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/utils/ConditionBuilder.java
 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/utils/ConditionBuilder.java
index 5a33542a9..aad834d1c 100644
--- 
a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/utils/ConditionBuilder.java
+++ 
b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/utils/ConditionBuilder.java
@@ -16,7 +16,7 @@
  */
 package org.apache.unomi.graphql.utils;
 
-import com.google.common.base.Strings;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.unomi.api.conditions.Condition;
 import org.apache.unomi.api.conditions.ConditionType;
 
@@ -113,13 +113,13 @@ public class ConditionBuilder {
     public Condition build() {
         final Condition condition = new Condition(conditionType);
 
-        if (!Strings.isNullOrEmpty(propertyName)) {
+        if (StringUtils.isNotEmpty(propertyName)) {
             condition.setParameter("propertyName", propertyName);
         }
-        if (!Strings.isNullOrEmpty(comparisonOperator)) {
+        if (StringUtils.isNotEmpty(comparisonOperator)) {
             condition.setParameter("comparisonOperator", comparisonOperator);
         }
-        if (!Strings.isNullOrEmpty(propertyValue)) {
+        if (StringUtils.isNotEmpty(propertyValue)) {
             condition.setParameter("propertyValue", propertyValue);
         }
         if (propertyValueDate != null) {
diff --git a/graphql/karaf-feature/pom.xml b/graphql/karaf-feature/pom.xml
index c7840e960..29f775c34 100644
--- a/graphql/karaf-feature/pom.xml
+++ b/graphql/karaf-feature/pom.xml
@@ -37,11 +37,6 @@
             <scope>compile</scope>
         </dependency>
         -->
-        <dependency>
-            <groupId>com.google.guava</groupId>
-            <artifactId>guava</artifactId>
-            <version>24.1.1-jre</version>
-        </dependency>
         <dependency>
             <groupId>commons-fileupload</groupId>
             <artifactId>commons-fileupload</artifactId>
diff --git a/graphql/karaf-feature/src/main/feature/feature.xml 
b/graphql/karaf-feature/src/main/feature/feature.xml
index b7dbdfb3f..31f339590 100644
--- a/graphql/karaf-feature/src/main/feature/feature.xml
+++ b/graphql/karaf-feature/src/main/feature/feature.xml
@@ -19,14 +19,12 @@
     <feature name="cdp-graphql-feature" description="Apache Unomi :: GraphQL 
API :: Karaf Feature"
              version="${project.version}">
         <feature>unomi-kar</feature>
-        <bundle start-level="80">mvn:com.google.guava/guava/24.1.1-jre</bundle>
         <bundle 
start-level="80">wrap:mvn:com.google.code.findbugs/jsr305/1.3.9</bundle>
         <bundle 
start-level="80">wrap:mvn:org.checkerframework/checker-compat-qual/2.0.0</bundle>
         <bundle 
start-level="80">wrap:mvn:com.google.errorprone/error_prone_annotations/2.1.3</bundle>
         <bundle 
start-level="80">wrap:mvn:com.google.j2objc/j2objc-annotations/1.1</bundle>
         <bundle 
start-level="80">wrap:mvn:org.codehaus.mojo/animal-sniffer-annotations/1.14</bundle>
         <bundle 
start-level="80">mvn:commons-fileupload/commons-fileupload/1.3.1</bundle>
-        <bundle start-level="80">mvn:commons-io/commons-io/2.4</bundle>
         <bundle 
start-level="80">mvn:org.antlr/antlr4-runtime/${antlr.runtime.version}</bundle>
         <bundle 
start-level="80">wrap:mvn:com.graphql-java/java-dataloader/${java.dataloader.version}</bundle>
         <bundle 
start-level="80">mvn:org.reactivestreams/reactive-streams/1.0.2</bundle>
diff --git a/itests/pom.xml b/itests/pom.xml
index 862996742..c8c11f358 100644
--- a/itests/pom.xml
+++ b/itests/pom.xml
@@ -103,12 +103,10 @@
         <dependency>
             <groupId>org.apache.httpcomponents</groupId>
             <artifactId>httpclient-osgi</artifactId>
-            <version>4.5.5</version>
         </dependency>
         <dependency>
             <groupId>org.apache.httpcomponents</groupId>
             <artifactId>httpcore-osgi</artifactId>
-            <version>4.4.9</version>
         </dependency>
         <dependency>
             <groupId>org.eclipse.jetty.websocket</groupId>
@@ -140,7 +138,7 @@
             <scope>test</scope>
         </dependency>
         <dependency>
-            <groupId>org.codehaus.groovy</groupId>
+            <groupId>org.apache.groovy</groupId>
             <artifactId>groovy</artifactId>
             <version>${groovy.version}</version>
             <scope>provided</scope>
diff --git a/itests/src/test/java/org/apache/unomi/itests/BasicIT.java 
b/itests/src/test/java/org/apache/unomi/itests/BasicIT.java
index 9ca7a76b4..146f5982d 100644
--- a/itests/src/test/java/org/apache/unomi/itests/BasicIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/BasicIT.java
@@ -28,14 +28,9 @@ import org.apache.http.util.EntityUtils;
 import org.apache.unomi.api.ContextRequest;
 import org.apache.unomi.api.CustomItem;
 import org.apache.unomi.api.Event;
-import org.apache.unomi.api.Metadata;
 import org.apache.unomi.api.Profile;
-import org.apache.unomi.api.Scope;
 import org.apache.unomi.api.conditions.ConditionType;
 import org.apache.unomi.api.rules.Rule;
-import org.apache.unomi.api.services.DefinitionsService;
-import org.apache.unomi.api.services.ProfileService;
-import org.apache.unomi.api.services.ScopeService;
 import org.apache.unomi.itests.tools.httpclient.HttpClientThatWaitsForUnomi;
 import org.apache.unomi.persistence.spi.CustomObjectMapper;
 import org.junit.After;
@@ -46,11 +41,9 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.inject.Inject;
 import java.io.File;
 import java.io.IOException;
 import java.util.*;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/ConditionEvaluatorIT.java 
b/itests/src/test/java/org/apache/unomi/itests/ConditionEvaluatorIT.java
index e9dd76ca0..2cb91bd7e 100644
--- a/itests/src/test/java/org/apache/unomi/itests/ConditionEvaluatorIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/ConditionEvaluatorIT.java
@@ -28,9 +28,7 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 
-import javax.inject.Inject;
 import java.util.*;
 import java.util.concurrent.TimeUnit;
 
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/CopyPropertiesActionIT.java 
b/itests/src/test/java/org/apache/unomi/itests/CopyPropertiesActionIT.java
index a95750e9a..6acde9fe2 100644
--- a/itests/src/test/java/org/apache/unomi/itests/CopyPropertiesActionIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/CopyPropertiesActionIT.java
@@ -22,8 +22,6 @@ import org.apache.unomi.api.Metadata;
 import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.PropertyType;
 import org.apache.unomi.api.rules.Rule;
-import org.apache.unomi.api.services.EventService;
-import org.apache.unomi.api.services.ProfileService;
 import org.apache.unomi.persistence.spi.CustomObjectMapper;
 import org.junit.After;
 import org.junit.Assert;
@@ -33,11 +31,9 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.inject.Inject;
 import java.io.File;
 import java.io.IOException;
 import java.util.Arrays;
diff --git a/itests/src/test/java/org/apache/unomi/itests/EventServiceIT.java 
b/itests/src/test/java/org/apache/unomi/itests/EventServiceIT.java
index 4bde047da..46d5e238e 100644
--- a/itests/src/test/java/org/apache/unomi/itests/EventServiceIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/EventServiceIT.java
@@ -21,8 +21,6 @@ import org.apache.unomi.api.PartialList;
 import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.conditions.Condition;
 import org.apache.unomi.api.query.Query;
-import org.apache.unomi.api.services.EventService;
-import org.apache.unomi.api.services.ProfileService;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Test;
@@ -30,9 +28,7 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 
-import javax.inject.Inject;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.Date;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/GroovyActionsServiceIT.java 
b/itests/src/test/java/org/apache/unomi/itests/GroovyActionsServiceIT.java
index f86ff7f7e..85d7d3385 100644
--- a/itests/src/test/java/org/apache/unomi/itests/GroovyActionsServiceIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/GroovyActionsServiceIT.java
@@ -23,10 +23,6 @@ import org.apache.unomi.api.Event;
 import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.actions.ActionType;
 import org.apache.unomi.api.rules.Rule;
-import org.apache.unomi.api.services.DefinitionsService;
-import org.apache.unomi.api.services.EventService;
-import org.apache.unomi.api.services.ProfileService;
-import org.apache.unomi.groovy.actions.services.GroovyActionsService;
 import org.apache.unomi.persistence.spi.CustomObjectMapper;
 import org.junit.After;
 import org.junit.Assert;
@@ -36,9 +32,7 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 
-import javax.inject.Inject;
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.IOException;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/IncrementPropertyIT.java 
b/itests/src/test/java/org/apache/unomi/itests/IncrementPropertyIT.java
index 98fe21717..b2cfcab48 100644
--- a/itests/src/test/java/org/apache/unomi/itests/IncrementPropertyIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/IncrementPropertyIT.java
@@ -23,10 +23,7 @@ import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.actions.Action;
 import org.apache.unomi.api.conditions.Condition;
 import org.apache.unomi.api.rules.Rule;
-import org.apache.unomi.api.services.DefinitionsService;
 import org.apache.unomi.api.services.EventService;
-import org.apache.unomi.api.services.ProfileService;
-import org.apache.unomi.api.services.RulesService;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
@@ -35,9 +32,7 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 
-import javax.inject.Inject;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.HashMap;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/InputValidationIT.java 
b/itests/src/test/java/org/apache/unomi/itests/InputValidationIT.java
index b04890001..4f78231f5 100644
--- a/itests/src/test/java/org/apache/unomi/itests/InputValidationIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/InputValidationIT.java
@@ -23,26 +23,18 @@ import org.apache.http.client.methods.HttpUriRequest;
 import org.apache.http.entity.ContentType;
 import org.apache.http.entity.StringEntity;
 import org.apache.http.util.EntityUtils;
-import org.apache.unomi.api.Event;
-import org.apache.unomi.api.Metadata;
 import org.apache.unomi.api.Scope;
-import org.apache.unomi.api.services.ScopeService;
 import org.apache.unomi.itests.tools.httpclient.HttpClientThatWaitsForUnomi;
-import org.apache.unomi.schema.api.JsonSchemaWrapper;
-import org.apache.unomi.schema.api.SchemaService;
 import org.junit.*;
 import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 
-import javax.inject.Inject;
 import java.io.IOException;
 import java.net.URLEncoder;
 import java.nio.charset.StandardCharsets;
 import java.util.HashMap;
-import java.util.List;
 import java.util.Map;
 import java.util.Objects;
 
@@ -55,7 +47,6 @@ public class InputValidationIT extends BaseIT {
     private final static String EVENT_COLLECTOR_URL = "/eventcollector";
     private final static String CONTEXT_JS_URL = "/context.js";
     private final static String CONTEXT_JSON_URL = "/context.json";
-    private final static String DUMMY_EVENT_TYPE_SCHEMA = 
"dummy-event-type.json";
 
     private final static String ERROR_MESSAGE_REQUEST_SIZE_LIMIT_EXCEEDED = 
"Request rejected by the server because: Request size exceed the limit";
     private final static String ERROR_MESSAGE_INVALID_DATA_RECEIVED = "Request 
rejected by the server because: Invalid received data";
diff --git a/itests/src/test/java/org/apache/unomi/itests/JSONSchemaIT.java 
b/itests/src/test/java/org/apache/unomi/itests/JSONSchemaIT.java
index 13550dda7..69943e7fd 100644
--- a/itests/src/test/java/org/apache/unomi/itests/JSONSchemaIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/JSONSchemaIT.java
@@ -23,13 +23,10 @@ import org.apache.http.entity.ContentType;
 import org.apache.http.entity.StringEntity;
 import org.apache.http.util.EntityUtils;
 import org.apache.unomi.api.Event;
-import org.apache.unomi.api.Metadata;
 import org.apache.unomi.api.Scope;
 import org.apache.unomi.api.conditions.Condition;
-import org.apache.unomi.api.services.ScopeService;
 import org.apache.unomi.itests.tools.httpclient.HttpClientThatWaitsForUnomi;
 import org.apache.unomi.schema.api.JsonSchemaWrapper;
-import org.apache.unomi.schema.api.SchemaService;
 import org.apache.unomi.schema.api.ValidationError;
 import org.junit.After;
 import org.junit.Before;
@@ -38,11 +35,9 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.inject.Inject;
 import java.io.IOException;
 import java.util.*;
 
diff --git a/itests/src/test/java/org/apache/unomi/itests/ModifyConsentIT.java 
b/itests/src/test/java/org/apache/unomi/itests/ModifyConsentIT.java
index 365da464e..eee3edc33 100644
--- a/itests/src/test/java/org/apache/unomi/itests/ModifyConsentIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/ModifyConsentIT.java
@@ -22,7 +22,6 @@ import org.apache.unomi.api.ConsentStatus;
 import org.apache.unomi.api.Event;
 import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.services.EventService;
-import org.apache.unomi.api.services.ProfileService;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
@@ -30,11 +29,9 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.inject.Inject;
 import java.util.Date;
 import java.util.Objects;
 
diff --git a/itests/src/test/java/org/apache/unomi/itests/PatchIT.java 
b/itests/src/test/java/org/apache/unomi/itests/PatchIT.java
index 505837175..40e70130a 100644
--- a/itests/src/test/java/org/apache/unomi/itests/PatchIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/PatchIT.java
@@ -20,23 +20,16 @@ import org.apache.unomi.api.Patch;
 import org.apache.unomi.api.PropertyType;
 import org.apache.unomi.api.actions.ActionType;
 import org.apache.unomi.api.conditions.ConditionType;
-import org.apache.unomi.api.services.DefinitionsService;
-import org.apache.unomi.api.services.PatchService;
-import org.apache.unomi.api.services.ProfileService;
 import org.apache.unomi.persistence.spi.CustomObjectMapper;
-import org.apache.unomi.persistence.spi.PersistenceService;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
-import org.osgi.framework.BundleContext;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.inject.Inject;
 import java.io.IOException;
 
 @RunWith(PaxExam.class)
diff --git a/itests/src/test/java/org/apache/unomi/itests/ProfileExportIT.java 
b/itests/src/test/java/org/apache/unomi/itests/ProfileExportIT.java
index daa353fa2..2b52d53d1 100644
--- a/itests/src/test/java/org/apache/unomi/itests/ProfileExportIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/ProfileExportIT.java
@@ -27,11 +27,9 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.inject.Inject;
 import java.io.File;
 import java.util.Date;
 import java.util.HashMap;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/ProfileImportActorsIT.java 
b/itests/src/test/java/org/apache/unomi/itests/ProfileImportActorsIT.java
index f42fbe9ab..eddea843e 100644
--- a/itests/src/test/java/org/apache/unomi/itests/ProfileImportActorsIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/ProfileImportActorsIT.java
@@ -20,19 +20,15 @@ import org.apache.unomi.api.Metadata;
 import org.apache.unomi.api.PartialList;
 import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.PropertyType;
-import org.apache.unomi.api.services.ProfileService;
 import org.apache.unomi.router.api.ImportConfiguration;
 import org.apache.unomi.router.api.RouterConstants;
-import org.apache.unomi.router.api.services.ImportExportConfigurationService;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 
-import javax.inject.Inject;
 import java.io.File;
 import java.util.Arrays;
 import java.util.Collections;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/ProfileImportBasicIT.java 
b/itests/src/test/java/org/apache/unomi/itests/ProfileImportBasicIT.java
index cfce7009c..2eb0d21a9 100644
--- a/itests/src/test/java/org/apache/unomi/itests/ProfileImportBasicIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/ProfileImportBasicIT.java
@@ -18,21 +18,17 @@ package org.apache.unomi.itests;
 
 import org.apache.unomi.api.PartialList;
 import org.apache.unomi.api.Profile;
-import org.apache.unomi.api.services.ProfileService;
 import org.apache.unomi.router.api.ImportConfiguration;
 import org.apache.unomi.router.api.RouterConstants;
-import org.apache.unomi.router.api.services.ImportExportConfigurationService;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.inject.Inject;
 import java.io.File;
 import java.io.IOException;
 import java.nio.file.Files;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/ProfileImportRankingIT.java 
b/itests/src/test/java/org/apache/unomi/itests/ProfileImportRankingIT.java
index 18c7e8128..5226f0608 100644
--- a/itests/src/test/java/org/apache/unomi/itests/ProfileImportRankingIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/ProfileImportRankingIT.java
@@ -20,19 +20,14 @@ import org.apache.unomi.api.Metadata;
 import org.apache.unomi.api.PartialList;
 import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.PropertyType;
-import org.apache.unomi.api.services.ProfileService;
 import org.apache.unomi.router.api.ImportConfiguration;
 import org.apache.unomi.router.api.RouterConstants;
-import org.apache.unomi.router.api.services.ImportExportConfigurationService;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
-
-import javax.inject.Inject;
 import java.io.File;
 import java.util.Collections;
 import java.util.HashMap;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/ProfileImportSurfersIT.java 
b/itests/src/test/java/org/apache/unomi/itests/ProfileImportSurfersIT.java
index e1d478bea..40fd341ff 100644
--- a/itests/src/test/java/org/apache/unomi/itests/ProfileImportSurfersIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/ProfileImportSurfersIT.java
@@ -20,22 +20,18 @@ import org.apache.unomi.api.Metadata;
 import org.apache.unomi.api.PartialList;
 import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.PropertyType;
-import org.apache.unomi.api.services.ProfileService;
 import org.apache.unomi.router.api.ImportConfiguration;
 import org.apache.unomi.router.api.RouterConstants;
 import org.apache.unomi.router.api.RouterUtils;
-import org.apache.unomi.router.api.services.ImportExportConfigurationService;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.inject.Inject;
 import java.io.File;
 import java.util.Collections;
 import java.util.HashMap;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/ProfileServiceWithoutOverwriteIT.java
 
b/itests/src/test/java/org/apache/unomi/itests/ProfileServiceWithoutOverwriteIT.java
index 79e733ca5..c6d4daeac 100644
--- 
a/itests/src/test/java/org/apache/unomi/itests/ProfileServiceWithoutOverwriteIT.java
+++ 
b/itests/src/test/java/org/apache/unomi/itests/ProfileServiceWithoutOverwriteIT.java
@@ -17,9 +17,6 @@
 package org.apache.unomi.itests;
 
 import org.apache.unomi.api.Profile;
-import org.apache.unomi.api.services.DefinitionsService;
-import org.apache.unomi.api.services.ProfileService;
-import org.apache.unomi.persistence.spi.PersistenceService;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -28,13 +25,10 @@ import org.ops4j.pax.exam.Option;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 
-import javax.inject.Inject;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
-import java.util.Objects;
 
 import static org.junit.Assert.assertEquals;
 import static org.ops4j.pax.exam.CoreOptions.systemProperty;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/PropertiesUpdateActionIT.java 
b/itests/src/test/java/org/apache/unomi/itests/PropertiesUpdateActionIT.java
index 88c72f647..a1e340680 100644
--- a/itests/src/test/java/org/apache/unomi/itests/PropertiesUpdateActionIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/PropertiesUpdateActionIT.java
@@ -20,9 +20,6 @@ package org.apache.unomi.itests;
 import org.apache.unomi.api.Event;
 import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.rules.Rule;
-import org.apache.unomi.api.services.EventService;
-import org.apache.unomi.api.services.ProfileService;
-import org.apache.unomi.api.services.RulesService;
 import org.apache.unomi.persistence.spi.CustomObjectMapper;
 import org.apache.unomi.plugins.baseplugin.actions.UpdatePropertiesAction;
 import org.junit.Assert;
@@ -32,11 +29,9 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.inject.Inject;
 import java.io.IOException;
 import java.text.SimpleDateFormat;
 import java.time.LocalDateTime;
diff --git a/itests/src/test/java/org/apache/unomi/itests/RuleServiceIT.java 
b/itests/src/test/java/org/apache/unomi/itests/RuleServiceIT.java
index 764980fe6..1d5a23d9d 100644
--- a/itests/src/test/java/org/apache/unomi/itests/RuleServiceIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/RuleServiceIT.java
@@ -31,15 +31,12 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.inject.Inject;
 
 import java.io.File;
 import java.io.IOException;
-import java.net.MalformedURLException;
 import java.util.*;
 
 import static org.junit.Assert.*;
diff --git a/itests/src/test/java/org/apache/unomi/itests/ScopeIT.java 
b/itests/src/test/java/org/apache/unomi/itests/ScopeIT.java
index 11edf0d67..d2b10a1e3 100644
--- a/itests/src/test/java/org/apache/unomi/itests/ScopeIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/ScopeIT.java
@@ -20,8 +20,6 @@ package org.apache.unomi.itests;
 import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.http.entity.ContentType;
 import org.apache.unomi.api.Scope;
-import org.apache.unomi.api.services.ScopeService;
-import org.apache.unomi.persistence.spi.PersistenceService;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -29,9 +27,7 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 
-import javax.inject.Inject;
 import java.util.List;
 import java.util.Objects;
 
diff --git a/itests/src/test/java/org/apache/unomi/itests/SegmentIT.java 
b/itests/src/test/java/org/apache/unomi/itests/SegmentIT.java
index 59375b8c9..1a13fb602 100644
--- a/itests/src/test/java/org/apache/unomi/itests/SegmentIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/SegmentIT.java
@@ -27,9 +27,6 @@ import org.apache.unomi.api.segments.Scoring;
 import org.apache.unomi.api.segments.ScoringElement;
 import org.apache.unomi.api.segments.Segment;
 import org.apache.unomi.api.services.EventService;
-import org.apache.unomi.api.services.ProfileService;
-import org.apache.unomi.api.services.SegmentService;
-import org.apache.unomi.persistence.spi.PersistenceService;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
@@ -38,12 +35,9 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
-import org.osgi.service.cm.Configuration;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.inject.Inject;
 import java.text.SimpleDateFormat;
 import java.time.LocalDate;
 import java.time.ZoneId;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/SendEventActionIT.java 
b/itests/src/test/java/org/apache/unomi/itests/SendEventActionIT.java
index 3b77dae37..821158f19 100644
--- a/itests/src/test/java/org/apache/unomi/itests/SendEventActionIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/SendEventActionIT.java
@@ -23,8 +23,6 @@ import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.actions.Action;
 import org.apache.unomi.api.conditions.Condition;
 import org.apache.unomi.api.rules.Rule;
-import org.apache.unomi.api.services.EventService;
-import org.apache.unomi.api.services.ProfileService;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Test;
@@ -32,9 +30,7 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.ops4j.pax.exam.util.Filter;
 
-import javax.inject.Inject;
 import java.util.Collections;
 import java.util.Date;
 import java.util.HashMap;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/graphql/BaseGraphQLIT.java 
b/itests/src/test/java/org/apache/unomi/itests/graphql/BaseGraphQLIT.java
index 3f6ab35d8..7e515a6e2 100644
--- a/itests/src/test/java/org/apache/unomi/itests/graphql/BaseGraphQLIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/graphql/BaseGraphQLIT.java
@@ -29,10 +29,7 @@ import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerSuite;
-import org.osgi.framework.BundleContext;
 
-import javax.inject.Inject;
-import java.io.IOException;
 import java.io.InputStream;
 import java.util.Base64;
 import java.util.List;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLEventIT.java 
b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLEventIT.java
index 329424ded..760532fea 100644
--- a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLEventIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLEventIT.java
@@ -19,16 +19,9 @@ package org.apache.unomi.itests.graphql;
 import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.unomi.api.Event;
 import org.apache.unomi.api.Profile;
-import org.apache.unomi.api.services.DefinitionsService;
-import org.apache.unomi.api.services.EventService;
-import org.apache.unomi.persistence.spi.PersistenceService;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
-import org.ops4j.pax.exam.util.Filter;
-
-import javax.inject.Inject;
-import java.io.IOException;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLListIT.java 
b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLListIT.java
index ce99b42cb..96a6eb986 100644
--- a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLListIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLListIT.java
@@ -18,13 +18,9 @@ package org.apache.unomi.itests.graphql;
 
 import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.unomi.api.Profile;
-import org.apache.unomi.api.services.ProfileService;
 import org.apache.unomi.lists.UserList;
 import org.junit.Assert;
 import org.junit.Test;
-import org.ops4j.pax.exam.util.Filter;
-
-import javax.inject.Inject;
 import java.util.Objects;
 
 public class GraphQLListIT extends BaseGraphQLIT {
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLProfileAliasesIT.java
 
b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLProfileAliasesIT.java
index d7defef44..1f4dd665b 100644
--- 
a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLProfileAliasesIT.java
+++ 
b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLProfileAliasesIT.java
@@ -19,13 +19,9 @@ package org.apache.unomi.itests.graphql;
 import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.ProfileAlias;
-import org.apache.unomi.api.services.ProfileService;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
-import org.ops4j.pax.exam.util.Filter;
-
-import javax.inject.Inject;
 
 public class GraphQLProfileAliasesIT extends BaseGraphQLIT {
 
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLProfileIT.java 
b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLProfileIT.java
index edbd5aeef..5bf8bc3b0 100644
--- a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLProfileIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLProfileIT.java
@@ -18,14 +18,10 @@ package org.apache.unomi.itests.graphql;
 
 import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.unomi.api.Profile;
-import org.apache.unomi.api.services.ProfileService;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
-import org.ops4j.pax.exam.util.Filter;
 
-import javax.inject.Inject;
-import java.io.IOException;
 import java.util.Objects;
 
 public class GraphQLProfileIT extends BaseGraphQLIT {
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLSegmentIT.java 
b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLSegmentIT.java
index 9b506a7f3..03e7a13ac 100644
--- a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLSegmentIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLSegmentIT.java
@@ -19,15 +19,10 @@ package org.apache.unomi.itests.graphql;
 import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.unomi.api.Profile;
 import org.apache.unomi.api.segments.Segment;
-import org.apache.unomi.api.services.ProfileService;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
-import org.ops4j.pax.exam.util.Filter;
-
-import javax.inject.Inject;
-import java.io.IOException;
 import java.util.Objects;
 import java.util.UUID;
 
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLSourceIT.java 
b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLSourceIT.java
index ab6dd2067..b5acc508f 100644
--- a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLSourceIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLSourceIT.java
@@ -18,13 +18,7 @@ package org.apache.unomi.itests.graphql;
 
 import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.unomi.api.Scope;
-import org.apache.unomi.api.services.ScopeService;
 import org.junit.Test;
-import org.ops4j.pax.exam.util.Filter;
-
-import javax.inject.Inject;
-import java.io.IOException;
-
 import static org.junit.Assert.*;
 
 public class GraphQLSourceIT extends BaseGraphQLIT {
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLTopicIT.java 
b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLTopicIT.java
index 924dc3bb1..6f2494755 100644
--- a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLTopicIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLTopicIT.java
@@ -18,13 +18,8 @@ package org.apache.unomi.itests.graphql;
 
 import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.unomi.api.Topic;
-import org.apache.unomi.api.services.TopicService;
 import org.junit.Assert;
 import org.junit.Test;
-import org.ops4j.pax.exam.util.Filter;
-
-import javax.inject.Inject;
-import java.io.IOException;
 
 public class GraphQLTopicIT extends BaseGraphQLIT {
 
diff --git 
a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLViewIT.java 
b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLViewIT.java
index 7ae5c94a3..190175043 100644
--- a/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLViewIT.java
+++ b/itests/src/test/java/org/apache/unomi/itests/graphql/GraphQLViewIT.java
@@ -19,22 +19,14 @@ package org.apache.unomi.itests.graphql;
 import java.util.List;
 import java.util.Map;
 import java.util.Objects;
-
-import javax.inject.Inject;
-
 import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.unomi.api.Metadata;
 import org.apache.unomi.api.Topic;
 import org.apache.unomi.api.conditions.Condition;
 import org.apache.unomi.api.segments.Segment;
-import org.apache.unomi.api.services.DefinitionsService;
-import org.apache.unomi.api.services.SegmentService;
-import org.apache.unomi.api.services.TopicService;
 import org.apache.unomi.lists.UserList;
-import org.apache.unomi.services.UserListService;
 import org.junit.Assert;
 import org.junit.Test;
-import org.ops4j.pax.exam.util.Filter;
 
 public class GraphQLViewIT
     extends BaseGraphQLIT
diff --git a/kar/pom.xml b/kar/pom.xml
index aceb4d14f..9f9cfacb9 100644
--- a/kar/pom.xml
+++ b/kar/pom.xml
@@ -140,12 +140,8 @@
             <version>${project.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.servicemix.bundles</groupId>
-            
<artifactId>org.apache.servicemix.bundles.jakarta-regexp</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.servicemix.bundles</groupId>
-            <artifactId>org.apache.servicemix.bundles.joda-time</artifactId>
+            <groupId>joda-time</groupId>
+            <artifactId>joda-time</artifactId>
         </dependency>
         <dependency>
             <groupId>org.apache.karaf.cellar</groupId>
diff --git a/kar/src/main/feature/feature.xml b/kar/src/main/feature/feature.xml
index 9f20881b1..cd4be3d37 100644
--- a/kar/src/main/feature/feature.xml
+++ b/kar/src/main/feature/feature.xml
@@ -20,7 +20,6 @@
 
     
<repository>mvn:org.apache.cxf.karaf/apache-cxf/${cxf.version}/xml/features</repository>
     
<repository>mvn:org.apache.karaf.cellar/apache-karaf-cellar/${version.karaf.cellar}/xml/features</repository>
-    
<repository>mvn:org.hibernate/hibernate-validator-osgi-karaf-features/${hibernate.validator.version}/xml/features</repository>
 
     <feature description="unomi-kar" version="${project.version}" 
name="unomi-kar"
              start-level="70">
@@ -35,7 +34,6 @@
         <feature>eventadmin</feature>
         <feature>feature</feature>
         <feature>shell-compat</feature>
-        <feature 
version="${hibernate.validator.version}">hibernate-validator</feature>
         <configfile 
finalname="/etc/org.apache.unomi.web.cfg">mvn:org.apache.unomi/unomi-wab/${project.version}/cfg/unomicfg</configfile>
         <configfile 
finalname="/etc/org.apache.unomi.persistence.elasticsearch.cfg">mvn:org.apache.unomi/unomi-persistence-elasticsearch-core/${project.version}/cfg/elasticsearchcfg</configfile>
         <configfile 
finalname="/etc/org.apache.unomi.plugins.request.cfg">mvn:org.apache.unomi/unomi-plugins-request/${project.version}/cfg/requestcfg</configfile>
@@ -47,7 +45,7 @@
         <configfile 
finalname="/etc/org.apache.unomi.geonames.cfg">mvn:org.apache.unomi/cxs-geonames-services/${project.version}/cfg/geonamescfg</configfile>
         <configfile 
finalname="/etc/org.apache.unomi.groovy.actions.cfg">mvn:org.apache.unomi/unomi-groovy-actions-services/${project.version}/cfg/groovyactionscfg</configfile>
         <configfile 
finalname="/etc/org.apache.unomi.schema.cfg">mvn:org.apache.unomi/unomi-json-schema-services/${project.version}/cfg/schemacfg</configfile>
-        <bundle start-level="75">mvn:commons-io/commons-io/2.4</bundle>
+        <bundle 
start-level="75">mvn:commons-io/commons-io/${apache.commons.io.version}</bundle>
         <bundle 
start-level="75">mvn:com.fasterxml.jackson.core/jackson-core/${version.jackson.core}</bundle>
         <bundle start-level="75">mvn:com.github.fge/btf/1.2</bundle>
         <bundle start-level="75">mvn:com.github.fge/msg-simple/1.1</bundle>
@@ -59,13 +57,13 @@
         <bundle 
start-level="75">mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-base/${version.jackson.core}</bundle>
         <bundle 
start-level="75">mvn:com.fasterxml.jackson.module/jackson-module-jaxb-annotations/${version.jackson.jaxb}</bundle>
         <bundle 
start-level="75">mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider/${version.jackson.core}</bundle>
+        <bundle start-level="75">mvn:org.yaml/snakeyaml/1.33</bundle>
         <bundle 
start-level="75">mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${version.jackson.core}</bundle>
-        <bundle 
start-level="75">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jakarta-regexp/1.4_1</bundle>
-        <bundle 
start-level="75">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.joda-time/2.3_1</bundle>
+        <bundle 
start-level="75">mvn:joda-time/joda-time/${joda-time.version}</bundle>
         <bundle 
start-level="75">mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxws-api-2.2/2.9.0</bundle>
         <bundle 
start-level="75">mvn:javax.annotation/javax.annotation-api/1.3.2</bundle>
         <bundle 
start-level="75">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jsr305/${jsr305.bundle.version}</bundle>
-
+        <bundle 
start-level="75">mvn:commons-collections/commons-collections/${apache.commons.collections.version}</bundle>
         <bundle start-level="70" 
start="false">mvn:org.apache.unomi/unomi-lifecycle-watcher/${project.version}</bundle>
         <bundle start-level="75" 
start="false">mvn:org.apache.unomi/unomi-api/${project.version}</bundle>
         <bundle start-level="75" 
start="false">mvn:org.apache.unomi/unomi-common/${project.version}</bundle>
diff --git a/metrics/pom.xml b/metrics/pom.xml
index 040e92662..a5b470841 100644
--- a/metrics/pom.xml
+++ b/metrics/pom.xml
@@ -86,9 +86,9 @@
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-simple</artifactId>
-            <version>1.6.6</version>
+            <version>1.7.36</version>
             <scope>test</scope>
         </dependency>
     </dependencies>
 
-</project>
\ No newline at end of file
+</project>
diff --git a/package/pom.xml b/package/pom.xml
index 036fd3701..c71652e69 100644
--- a/package/pom.xml
+++ b/package/pom.xml
@@ -335,7 +335,6 @@
                 <configuration>
                     <installedFeatures>
                         <feature>wrapper</feature>
-                        <feature>hibernate-validator</feature>
                         <feature>cxf-commands</feature>
                     </installedFeatures>
                     <startupFeatures>
diff --git a/persistence-elasticsearch/core/pom.xml 
b/persistence-elasticsearch/core/pom.xml
index 587b7c4da..4dcb39e45 100644
--- a/persistence-elasticsearch/core/pom.xml
+++ b/persistence-elasticsearch/core/pom.xml
@@ -60,11 +60,6 @@
             <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
-        <dependency>
-            <groupId>com.google.guava</groupId>
-            <artifactId>guava</artifactId>
-            <version>20.0</version>
-        </dependency>
         <dependency>
             <groupId>org.elasticsearch.client</groupId>
             <artifactId>elasticsearch-rest-high-level-client</artifactId>
@@ -122,18 +117,6 @@
                 </exclusion>
             </exclusions>
         </dependency>
-        <dependency>
-            <groupId>org.apache.logging.log4j</groupId>
-            <artifactId>log4j-core</artifactId>
-            <version>2.17.0</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.logging.log4j</groupId>
-            <artifactId>log4j-api</artifactId>
-            <version>2.17.0</version>
-            <scope>test</scope>
-        </dependency>
         <dependency>
             <groupId>org.apache.logging.log4j</groupId>
             <artifactId>log4j-slf4j-impl</artifactId>
@@ -192,10 +175,6 @@
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-lang3</artifactId>
         </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
         <dependency>
             <groupId>commons-io</groupId>
             <artifactId>commons-io</artifactId>
@@ -311,6 +290,7 @@
                             org.xml.sax.helpers;resolution:=optional,
                             org.zeromq;resolution:=optional,
                             sun.misc;resolution:=optional,
+                            sun.nio.ch;resolution:=optional,
                             *
                         </Import-Package>
                         <Export-Package>
diff --git 
a/persistence-elasticsearch/core/src/main/java/org/apache/unomi/persistence/elasticsearch/conditions/ConditionContextHelper.java
 
b/persistence-elasticsearch/core/src/main/java/org/apache/unomi/persistence/elasticsearch/conditions/ConditionContextHelper.java
index 025566e73..7a590cf84 100644
--- 
a/persistence-elasticsearch/core/src/main/java/org/apache/unomi/persistence/elasticsearch/conditions/ConditionContextHelper.java
+++ 
b/persistence-elasticsearch/core/src/main/java/org/apache/unomi/persistence/elasticsearch/conditions/ConditionContextHelper.java
@@ -17,9 +17,6 @@
 
 package org.apache.unomi.persistence.elasticsearch.conditions;
 
-import com.google.common.base.Function;
-import com.google.common.collect.Collections2;
-import com.google.common.collect.Lists;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.logging.log4j.core.util.IOUtils;
 import org.apache.lucene.analysis.charfilter.MappingCharFilterFactory;
@@ -33,6 +30,7 @@ import java.io.IOException;
 import java.io.Reader;
 import java.io.StringReader;
 import java.util.*;
+import java.util.stream.Collectors;
 
 public class ConditionContextHelper {
     private static final Logger logger = 
LoggerFactory.getLogger(ConditionContextHelper.class);
@@ -142,15 +140,12 @@ public class ConditionContextHelper {
 
     public static <T> Collection<T> foldToASCII(Collection<T> s) {
         if (s != null) {
-            return Collections2.transform(s, new Function<T, T>() {
-                @Override
-                public T apply(T o) {
-                    if (o instanceof String) {
-                        return (T) ConditionContextHelper.foldToASCII((String) 
o);
-                    }
-                    return o;
+            return s.stream().map(o -> {
+                if (o instanceof String) {
+                    return (T) ConditionContextHelper.foldToASCII((String) o);
                 }
-            });
+                return o;
+            }).collect(Collectors.toCollection(ArrayList::new));
         }
         return null;
     }
diff --git a/persistence-elasticsearch/pom.xml 
b/persistence-elasticsearch/pom.xml
index 407417b0b..a0515b0ec 100644
--- a/persistence-elasticsearch/pom.xml
+++ b/persistence-elasticsearch/pom.xml
@@ -39,7 +39,6 @@
             <plugin>
                 <groupId>org.apache.felix</groupId>
                 <artifactId>maven-bundle-plugin</artifactId>
-                <version>4.2.1</version>
                 <extensions>true</extensions>
                 <configuration>
                     <instructions>
diff --git a/persistence-spi/pom.xml b/persistence-spi/pom.xml
index 73413810c..7d939240d 100644
--- a/persistence-spi/pom.xml
+++ b/persistence-spi/pom.xml
@@ -52,10 +52,6 @@
             <artifactId>jackson-module-jaxb-annotations</artifactId>
             <scope>provided</scope>
         </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
         <dependency>
             <groupId>commons-beanutils</groupId>
             <artifactId>commons-beanutils</artifactId>
@@ -71,7 +67,7 @@
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-simple</artifactId>
-            <version>1.6.6</version>
+            <version>1.7.36</version>
             <scope>test</scope>
         </dependency>
     </dependencies>
diff --git a/plugins/baseplugin/pom.xml b/plugins/baseplugin/pom.xml
index 631eb316b..3b00c3bdf 100644
--- a/plugins/baseplugin/pom.xml
+++ b/plugins/baseplugin/pom.xml
@@ -42,10 +42,6 @@
             <version>2.3.2</version>
             <scope>provided</scope>
         </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
         <dependency>
             <groupId>commons-beanutils</groupId>
             <artifactId>commons-beanutils</artifactId>
@@ -55,8 +51,8 @@
             <artifactId>commons-lang3</artifactId>
         </dependency>
         <dependency>
-            <groupId>org.apache.servicemix.bundles</groupId>
-            <artifactId>org.apache.servicemix.bundles.joda-time</artifactId>
+            <groupId>joda-time</groupId>
+            <artifactId>joda-time</artifactId>
             <scope>provided</scope>
         </dependency>
         <dependency>
@@ -75,10 +71,6 @@
             <groupId>ognl</groupId>
             <artifactId>ognl</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.javassist</groupId>
-            <artifactId>javassist</artifactId>
-        </dependency>
         <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-databind</artifactId>
@@ -107,7 +99,7 @@
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-simple</artifactId>
-            <version>1.6.6</version>
+            <version>1.7.36</version>
             <scope>test</scope>
         </dependency>
 
@@ -125,8 +117,8 @@
                         <Import-Package>
                             jdk.internal.module;resolution:=optional,
                             com.sun.tools.attach;resolution:=optional,
-                            javassist;resolution:=optional,
                             !com.sun.jdi*,
+                            javassist;resolution:=optional,
                             *
                         </Import-Package>
                     </instructions>
diff --git 
a/plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/PropertyConditionEvaluator.java
 
b/plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/PropertyConditionEvaluator.java
index c52bea840..06b32bc7c 100644
--- 
a/plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/PropertyConditionEvaluator.java
+++ 
b/plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/PropertyConditionEvaluator.java
@@ -375,16 +375,16 @@ public class PropertyConditionEvaluator implements 
ConditionEvaluator {
     private OgnlContext getOgnlContext(ClassLoader classLoader) {
         return (OgnlContext) Ognl.createDefaultContext(null, new 
MemberAccess() {
                     @Override
-                    public Object setup(Map context, Object target, Member 
member, String propertyName) {
+                    public Object setup(OgnlContext ognlContext, Object 
target, Member member, String propertyName) {
                         return null;
                     }
 
                     @Override
-                    public void restore(Map context, Object target, Member 
member, String propertyName, Object state) {
+                    public void restore(OgnlContext ognlContext, Object 
target, Member member, String propertyName, Object state) {
                     }
 
                     @Override
-                    public boolean isAccessible(Map context, Object target, 
Member member, String propertyName) {
+                    public boolean isAccessible(OgnlContext ognlContext, 
Object target, Member member, String propertyName) {
                         int modifiers = member.getModifiers();
                         boolean accessible = false;
                         if (target instanceof Item && 
!"getClass".equals(member.getName())) {
diff --git a/plugins/kafka-injector/pom.xml b/plugins/kafka-injector/pom.xml
index ef6c31644..70d4c446c 100644
--- a/plugins/kafka-injector/pom.xml
+++ b/plugins/kafka-injector/pom.xml
@@ -37,7 +37,7 @@
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-api</artifactId>
-            <version>1.7.28</version>
+            <version>1.7.36</version>
         </dependency>
         <dependency>
             <groupId>org.apache.unomi</groupId>
diff --git a/plugins/mail/pom.xml b/plugins/mail/pom.xml
index 3172c534f..2dc23baf5 100644
--- a/plugins/mail/pom.xml
+++ b/plugins/mail/pom.xml
@@ -44,7 +44,6 @@
         <dependency>
             <groupId>org.antlr</groupId>
             <artifactId>ST4</artifactId>
-            <classifier>complete</classifier>
         </dependency>
     </dependencies>
 
@@ -59,6 +58,7 @@
                         
<Embed-Dependency>*;scope=compile|runtime</Embed-Dependency>
                         <Import-Package>
                             javax.activation;resolution:=optional,
+                            org.antlr.runtime.*;resolution:=optional,
                             *
                         </Import-Package>
                     </instructions>
diff --git a/pom.xml b/pom.xml
index 5be302b18..d50d50089 100644
--- a/pom.xml
+++ b/pom.xml
@@ -55,41 +55,40 @@
         <url>https://issues.apache.org/jira/browse/UNOMI</url>
     </issueManagement>
 
-    <ciManagement>
-        <system>Jenkins</system>
-        <url>https://builds.apache.org/job/unomi-master</url>
-    </ciManagement>
-
     <inceptionYear>2014</inceptionYear>
 
     <properties>
         <karaf.version>4.2.15</karaf.version>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <cxf.version>3.3.11</cxf.version>
-        <version.jackson.core>2.10.5</version.jackson.core>
-        <version.jackson.databind>2.10.5.1</version.jackson.databind>
-        <version.jackson.jaxb>2.10.5</version.jackson.jaxb>
+        <version.jackson.core>2.11.4</version.jackson.core>
+        <version.jackson.databind>2.11.4</version.jackson.databind>
+        <version.jackson.jaxb>2.11.4</version.jackson.jaxb>
         <version.karaf>4.2.15</version.karaf>
         <version.karaf.cellar>4.2.1</version.karaf.cellar>
-        <version.pax.exam>4.13.1</version.pax.exam>
+        <version.pax.exam>4.13.5</version.pax.exam>
         <elasticsearch.version>7.4.2</elasticsearch.version>
         <elasticsearch.test.version>7.11.0</elasticsearch.test.version>
         <lucene.version>8.2.0</lucene.version>
-        <groovy.version>3.0.3</groovy.version>
-        <networknt.version>1.0.49</networknt.version>
+        <groovy.version>4.0.21</groovy.version>
+        <networknt.version>1.4.0</networknt.version>
         <bean.validation.version>1.1.0.Final</bean.validation.version>
-        <hibernate.validator.version>5.4.3.Final</hibernate.validator.version>
+        <apache.commons.io.version>2.16.1</apache.commons.io.version>
+        <apache.commons.lang3.version>3.3.2</apache.commons.lang3.version>
+        
<apache.commons.beanutils.version>1.9.4</apache.commons.beanutils.version>
+        
<apache.commons.collections.version>3.2.2</apache.commons.collections.version>
+        <apache.commons.email.version>1.3.3</apache.commons.email.version>
+        <slf4j.version>1.7.36</slf4j.version>
+        <joda-time.version>2.12.7</joda-time.version>
+        <st4.version>4.3.4</st4.version>
+        <json-patch.version>1.9</json-patch.version>
 
-        <java.version>1.8</java.version>
+        <java.version>11</java.version>
 
         <maven.compiler.source>${java.version}</maven.compiler.source>
         <maven.compiler.target>${java.version}</maven.compiler.target>
-        <scala.version>2.12.6</scala.version>
         <encoding>UTF-8</encoding>
 
-        <gatling.version>2.1.2</gatling.version>
-        <scala-maven-plugin.version>4.3.0</scala-maven-plugin.version>
-
         <!-- Librairies for Karaf packaging -->
         <xerces.version>2.11.0_1</xerces.version>
         <servicemix.specs.version>2.9.0</servicemix.specs.version>
@@ -97,8 +96,8 @@
         <xalan.bundle.version>2.7.2_3</xalan.bundle.version>
         
<xalan-serializer.bundle.version>2.7.2_1</xalan-serializer.bundle.version>
         <jna.version>4.5.0</jna.version>
-        <httpclient-osgi.version>4.5.5</httpclient-osgi.version>
-        <httpcore-osgi.version>4.4.9</httpcore-osgi.version>
+        <httpclient-osgi.version>4.5.14</httpclient-osgi.version>
+        <httpcore-osgi.version>4.4.16</httpcore-osgi.version>
 
         <node.version>v16.20.2</node.version>
         <yarn.version>v1.22.19</yarn.version>
@@ -679,7 +678,6 @@
 
     <dependencyManagement>
         <dependencies>
-
             <dependency>
                 <groupId>org.osgi</groupId>
                 <artifactId>osgi.core</artifactId>
@@ -767,27 +765,27 @@
             <dependency>
                 <groupId>commons-io</groupId>
                 <artifactId>commons-io</artifactId>
-                <version>2.4</version>
+                <version>${apache.commons.io.version}</version>
             </dependency>
             <dependency>
                 <groupId>org.apache.commons</groupId>
                 <artifactId>commons-lang3</artifactId>
-                <version>3.3.2</version>
+                <version>${apache.commons.lang3.version}</version>
             </dependency>
             <dependency>
                 <groupId>commons-beanutils</groupId>
                 <artifactId>commons-beanutils</artifactId>
-                <version>1.9.4</version>
+                <version>${apache.commons.beanutils.version}</version>
             </dependency>
             <dependency>
                 <groupId>commons-collections</groupId>
                 <artifactId>commons-collections</artifactId>
-                <version>3.2.2</version>
+                <version>${apache.commons.collections.version}</version>
             </dependency>
             <dependency>
                 <groupId>org.apache.commons</groupId>
                 <artifactId>commons-email</artifactId>
-                <version>1.3.3</version>
+                <version>${apache.commons.email.version}</version>
                 <!-- This is the latest version we can use right now because 
of the javax.mail dependency that is still on 1.3 provided by pax-web, standard 
and cxf features -->
             </dependency>
             <!-- End of Apache Commons dependencies -->
@@ -868,7 +866,7 @@
             <dependency>
                 <groupId>org.slf4j</groupId>
                 <artifactId>slf4j-api</artifactId>
-                <version>1.6.6</version>
+                <version>${slf4j.version}</version>
                 <scope>provided</scope>
             </dependency>
             <dependency>
@@ -882,6 +880,11 @@
                 <version>${httpclient-osgi.version}</version>
                 <type>bundle</type>
             </dependency>
+            <dependency>
+                <groupId>commons-codec</groupId>
+                <artifactId>commons-codec</artifactId>
+                <version>1.17.0</version>
+            </dependency>
             <dependency>
                 <groupId>org.apache.httpcomponents</groupId>
                 <artifactId>httpcore-osgi</artifactId>
@@ -910,9 +913,10 @@
             <dependency>
                 <groupId>org.ops4j.pax.url</groupId>
                 <artifactId>pax-url-aether</artifactId>
-                <version>1.6.0</version>
+                <version>2.6.14</version>
                 <scope>test</scope>
             </dependency>
+            <!-- TODO check if can be removed -->
             <dependency>
                 <groupId>javax.inject</groupId>
                 <artifactId>javax.inject</artifactId>
@@ -927,87 +931,27 @@
                 <version>${bean.validation.version}</version>
                 <scope>provided</scope>
             </dependency>
-            <dependency>
-                <groupId>org.hibernate</groupId>
-                <artifactId>hibernate-validator</artifactId>
-                <version>${hibernate.validator.version}</version>
-                <scope>provided</scope>
-            </dependency>
-
             <dependency>
                 <groupId>junit</groupId>
                 <artifactId>junit</artifactId>
-                <version>4.12</version>
+                <version>4.13.2</version>
                 <scope>test</scope>
             </dependency>
             <dependency>
-                <groupId>com.carrotsearch</groupId>
-                <artifactId>junit-benchmarks</artifactId>
-                <version>0.7.2</version>
-                <scope>test</scope>
-            </dependency>
-            <dependency>
-                <groupId>com.h2database</groupId>
-                <artifactId>h2</artifactId>
-                <version>1.4.181</version>
-                <scope>test</scope>
-            </dependency>
-
-            <dependency>
-                <groupId>io.gatling</groupId>
-                <artifactId>gatling-app</artifactId>
-                <version>${gatling.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>io.gatling</groupId>
-                <artifactId>gatling-recorder</artifactId>
-                <version>${gatling.version}</version>
+                <groupId>joda-time</groupId>
+                <artifactId>joda-time</artifactId>
+                <version>${joda-time.version}</version>
             </dependency>
-            <dependency>
-                <groupId>io.gatling.highcharts</groupId>
-                <artifactId>gatling-charts-highcharts</artifactId>
-                <version>${gatling.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.scala-lang</groupId>
-                <artifactId>scala-library</artifactId>
-                <version>${scala.version}</version>
-            </dependency>
-
-            <dependency>
-                <groupId>org.apache.servicemix.bundles</groupId>
-                
<artifactId>org.apache.servicemix.bundles.jakarta-regexp</artifactId>
-                <version>1.4_1</version>
-            </dependency>
-            <dependency>
-                <groupId>org.apache.servicemix.bundles</groupId>
-                
<artifactId>org.apache.servicemix.bundles.joda-time</artifactId>
-                <version>2.3_1</version>
-                <scope>provided</scope>
-            </dependency>
-
             <dependency>
                 <groupId>ognl</groupId>
                 <artifactId>ognl</artifactId>
-                <version>3.2.14</version>
-            </dependency>
-            <dependency>
-                <groupId>org.javassist</groupId>
-                <artifactId>javassist</artifactId>
-                <version>3.24.1-GA</version>
+                <version>3.4.3</version>
             </dependency>
             <dependency>
                 <groupId>org.antlr</groupId>
                 <artifactId>ST4</artifactId>
-                <version>4.0.8</version>
-                <classifier>complete</classifier>
+                <version>${st4.version}</version>
             </dependency>
-            <dependency>
-                <groupId>org.glassfish</groupId>
-                <artifactId>javax.json</artifactId>
-                <version>1.0.4</version>
-            </dependency>
-
             <dependency>
                 <groupId>org.apache.geronimo.specs</groupId>
                 <artifactId>geronimo-jcdi_1.0_spec</artifactId>
@@ -1032,9 +976,8 @@
             <dependency>
                 <groupId>org.mvel</groupId>
                 <artifactId>mvel2</artifactId>
-                <version>2.4.7.Final</version>
+                <version>2.5.2.Final</version>
             </dependency>
-
         </dependencies>
     </dependencyManagement>
 
@@ -1063,7 +1006,7 @@
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-api</artifactId>
-            <version>1.7.1</version>
+            <version>1.7.36</version>
             <scope>provided</scope>
         </dependency>
     </dependencies>
@@ -1078,6 +1021,7 @@
                     <extensions>true</extensions>
                     <configuration>
                         <instructions>
+                            <_noimportjava>true</_noimportjava>
                             
<Embed-Dependency>*;scope=compile|runtime</Embed-Dependency>
                         </instructions>
                     </configuration>
diff --git a/rest/pom.xml b/rest/pom.xml
index c807057ba..e60ce2085 100644
--- a/rest/pom.xml
+++ b/rest/pom.xml
@@ -37,11 +37,6 @@
             <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
-        <dependency>
-            <groupId>org.apache.unomi</groupId>
-            <artifactId>unomi-persistence-spi</artifactId>
-            <version>${project.version}</version>
-        </dependency>
         <dependency>
             <groupId>org.apache.unomi</groupId>
             <artifactId>unomi-json-schema-services</artifactId>
@@ -87,10 +82,6 @@
             <artifactId>cxf-rt-transports-http</artifactId>
             <scope>provided</scope>
         </dependency>
-        <dependency>
-            <groupId>org.apache.cxf</groupId>
-            <artifactId>cxf-rt-rs-security-cors</artifactId>
-        </dependency>
         <dependency>
             <groupId>com.fasterxml.jackson.jaxrs</groupId>
             <artifactId>jackson-jaxrs-json-provider</artifactId>
@@ -137,13 +128,6 @@
         <dependency>
             <groupId>org.apache.cxf</groupId>
             <artifactId>cxf-rt-rs-security-cors</artifactId>
-            <version>${cxf.version}</version>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.cxf</groupId>
-            <artifactId>cxf-rt-frontend-jaxrs</artifactId>
-            <version>${cxf.version}</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
@@ -155,10 +139,6 @@
             <groupId>commons-beanutils</groupId>
             <artifactId>commons-beanutils</artifactId>
         </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
         <dependency>
             <groupId>org.apache.karaf.jaas</groupId>
             <artifactId>org.apache.karaf.jaas.boot</artifactId>
@@ -170,10 +150,5 @@
             <artifactId>validation-api</artifactId>
             <scope>provided</scope>
         </dependency>
-        <dependency>
-            <groupId>org.hibernate</groupId>
-            <artifactId>hibernate-validator</artifactId>
-            <scope>provided</scope>
-        </dependency>
     </dependencies>
 </project>
diff --git a/samples/groovy-actions/pom.xml b/samples/groovy-actions/pom.xml
index 183afb02b..b323883d2 100644
--- a/samples/groovy-actions/pom.xml
+++ b/samples/groovy-actions/pom.xml
@@ -45,13 +45,13 @@
         <dependency>
             <groupId>org.jsoup</groupId>
             <artifactId>jsoup</artifactId>
-            <version>1.12.1</version>
+            <version>1.15.3</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
-            <groupId>org.codehaus.groovy</groupId>
+            <groupId>org.apache.groovy</groupId>
             <artifactId>groovy</artifactId>
-            <version>3.0.0-rc-1</version>
+            <version>${groovy.version}</version>
             <scope>provided</scope>
         </dependency>
 
@@ -73,4 +73,4 @@
             </plugin>
         </plugins>
     </build>
-</project>
\ No newline at end of file
+</project>
diff --git 
a/samples/groovy-actions/src/main/resources/META-INF/cxs/actions/testGroovyAction.groovy
 
b/samples/groovy-actions/src/main/resources/META-INF/cxs/actions/testGroovyAction.groovy
index 87190cbcd..8f005877c 100644
--- 
a/samples/groovy-actions/src/main/resources/META-INF/cxs/actions/testGroovyAction.groovy
+++ 
b/samples/groovy-actions/src/main/resources/META-INF/cxs/actions/testGroovyAction.groovy
@@ -21,7 +21,7 @@ import org.jsoup.nodes.Document
 import static groovyx.net.http.HttpBuilder.configure
 
 Document page = configure {
-    request.uri = 
'https://mvnrepository.com/artifact/org.codehaus.groovy/groovy-all'
+    request.uri = 
'https://mvnrepository.com/artifact/org.apache.groovy/groovy-all'
 }.get()
 
 String license = page.select('span.b.lic').collect { it.text() }.join(', ')
@@ -33,4 +33,4 @@ println "Action parameters=${action.parameterValues}"
 
 println "Groovy is licensed under: ${license}"
 
-EventService.NO_CHANGE
\ No newline at end of file
+EventService.NO_CHANGE
diff --git a/scripting/pom.xml b/scripting/pom.xml
index 44b00920e..ebf06211c 100644
--- a/scripting/pom.xml
+++ b/scripting/pom.xml
@@ -57,7 +57,7 @@
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-simple</artifactId>
-            <version>1.6.6</version>
+            <version>1.7.36</version>
             <scope>test</scope>
         </dependency>
 
diff --git a/services/pom.xml b/services/pom.xml
index 59fc04bd7..d1e321c58 100644
--- a/services/pom.xml
+++ b/services/pom.xml
@@ -83,10 +83,9 @@
         <dependency>
             <groupId>com.github.fge</groupId>
             <artifactId>json-patch</artifactId>
-            <version>1.9</version>
+            <version>${json-patch.version}</version>
             <scope>provided</scope>
         </dependency>
-
         <dependency>
           <groupId>com.fasterxml.jackson.core</groupId>
           <artifactId>jackson-core</artifactId>
@@ -112,10 +111,6 @@
             <groupId>commons-beanutils</groupId>
             <artifactId>commons-beanutils</artifactId>
         </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
         <dependency>
             <groupId>org.apache.karaf.cellar</groupId>
             <artifactId>org.apache.karaf.cellar.core</artifactId>
@@ -157,7 +152,7 @@
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-simple</artifactId>
-            <version>1.6.6</version>
+            <version>1.7.36</version>
             <scope>test</scope>
         </dependency>
 
diff --git 
a/services/src/main/java/org/apache/unomi/services/actions/impl/ActionExecutorDispatcherImpl.java
 
b/services/src/main/java/org/apache/unomi/services/actions/impl/ActionExecutorDispatcherImpl.java
index d5df384d9..defff447f 100644
--- 
a/services/src/main/java/org/apache/unomi/services/actions/impl/ActionExecutorDispatcherImpl.java
+++ 
b/services/src/main/java/org/apache/unomi/services/actions/impl/ActionExecutorDispatcherImpl.java
@@ -17,8 +17,6 @@
 
 package org.apache.unomi.services.actions.impl;
 
-import org.apache.commons.beanutils.PropertyUtils;
-import org.apache.commons.lang3.StringUtils;
 import org.apache.unomi.api.Event;
 import org.apache.unomi.api.actions.Action;
 import org.apache.unomi.api.actions.ActionDispatcher;
diff --git a/tools/shell-commands/pom.xml b/tools/shell-commands/pom.xml
index 1c7388a69..745567914 100644
--- a/tools/shell-commands/pom.xml
+++ b/tools/shell-commands/pom.xml
@@ -76,19 +76,19 @@
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
-            <version>4.11</version>
+            <version>4.13.2</version>
             <scope>test</scope>
         </dependency>
 
         <dependency>
-            <groupId>org.codehaus.groovy</groupId>
+            <groupId>org.apache.groovy</groupId>
             <artifactId>groovy</artifactId>
             <version>${groovy.version}</version>
             <scope>provided</scope>
         </dependency>
 
         <dependency>
-            <groupId>org.codehaus.groovy</groupId>
+            <groupId>org.apache.groovy</groupId>
             <artifactId>groovy-json</artifactId>
             <version>${groovy.version}</version>
             <scope>provided</scope>
@@ -116,6 +116,10 @@
                 <artifactId>maven-bundle-plugin</artifactId>
                 <configuration>
                     <instructions>
+                        <Import-Package>
+                            sun.nio.ch;resolution:=optional,
+                            *
+                        </Import-Package>
                         <Export-Package>
                             org.apache.unomi.shell.migration.utils,
                             org.apache.unomi.shell.migration.service,
diff --git a/tools/shell-dev-commands/pom.xml b/tools/shell-dev-commands/pom.xml
index 01a54b667..ac498b6ed 100644
--- a/tools/shell-dev-commands/pom.xml
+++ b/tools/shell-dev-commands/pom.xml
@@ -103,7 +103,7 @@
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
-            <version>4.11</version>
+            <version>4.13.2</version>
             <scope>test</scope>
         </dependency>
     </dependencies>
diff --git a/wab/pom.xml b/wab/pom.xml
index 058e4c1c2..722f942e6 100644
--- a/wab/pom.xml
+++ b/wab/pom.xml
@@ -83,11 +83,6 @@
             <groupId>commons-beanutils</groupId>
             <artifactId>commons-beanutils</artifactId>
         </dependency>
-        <dependency>
-            <groupId>commons-collections</groupId>
-            <artifactId>commons-collections</artifactId>
-        </dependency>
-
 
         <!-- Builds on core streaming API; also needs core annotations -->
         <dependency>
@@ -105,11 +100,6 @@
             <artifactId>pax-web-api</artifactId>
             <scope>provided</scope>
         </dependency>
-        <dependency>
-            <groupId>org.glassfish</groupId>
-            <artifactId>javax.json</artifactId>
-        </dependency>
-
     </dependencies>
 
     <build>
@@ -129,6 +119,7 @@
                             org.apache.unomi.api.segments,
                             org.apache.unomi.api.rules,
                             org.apache.unomi.api.query,
+                            sun.nio.ch;resolution:=optional,
                             *
                         </Import-Package>
                         <Web-ContextPath>/</Web-ContextPath>

Reply via email to