You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2020/10/11 11:04:52 UTC

[syncope] branch master updated: Removing a few (more) code scanning alerts

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

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


The following commit(s) were added to refs/heads/master by this push:
     new 6d6a920  Removing a few (more) code scanning alerts
6d6a920 is described below

commit 6d6a9203f22dc8a71358d639921ed064c6f97d74
Author: Francesco Chicchiriccò <il...@apache.org>
AuthorDate: Sun Oct 11 13:04:38 2020 +0200

    Removing a few (more) code scanning alerts
---
 .../client/console/widgets/RemediationsWidget.java |  2 +-
 .../console/wizards/CSVPushWizardBuilder.java      |  8 +++----
 .../syncope/client/console/PreferenceManager.java  |  8 +++----
 .../client/console/SyncopeWebApplication.java      |  8 ++++++-
 .../console/panels/DashboardExtensionsPanel.java   |  6 ++---
 .../panels/DisplayAttributesModalPanel.java        |  7 +++---
 .../client/console/widgets/AnyByRealmWidget.java   |  2 --
 .../client/console/widgets/BaseExtWidget.java      |  1 -
 .../client/console/widgets/ExtAlertWidget.java     |  6 ++++-
 .../client/enduser/SyncopeWebApplication.java      |  6 +++--
 .../enduser/wizards/any/AnyWizardBuilder.java      |  2 +-
 .../syncope/client/enduser/wizards/any/Groups.java |  2 +-
 .../ConnObjectTOFiqlSearchConditionBuilder.java    |  2 +-
 .../common/rest/api/batch/BatchPayloadParser.java  |  8 +++++--
 .../jpa/entity/auth/JPAWAConfigEntry.java          | 15 +++++++------
 .../jpa/openjpa/BooleanValueHandler.java           |  8 +++----
 .../pushpull/DefaultRealmPullResultHandler.java    |  4 ++--
 .../provisioning/java/utils/ConnObjectUtils.java   |  2 +-
 .../console/widgets/UserRequestFormsWidget.java    |  2 +-
 .../core/flowable/impl/FlowableRuntimeUtils.java   |  4 +---
 .../flowable/impl/FlowableUserRequestHandler.java  |  4 ++--
 .../flowable/impl/FlowableUserWorkflowAdapter.java |  6 ++---
 .../console/panels/SCIMConfGeneralPanel.java       | 15 ++++++++-----
 .../service/MailTemplateManagerService.java        |  5 -----
 .../view/ResourceExplorerTopComponent.java         | 26 ++++++++++++----------
 25 files changed, 84 insertions(+), 75 deletions(-)

diff --git a/client/idm/console/src/main/java/org/apache/syncope/client/console/widgets/RemediationsWidget.java b/client/idm/console/src/main/java/org/apache/syncope/client/console/widgets/RemediationsWidget.java
index be5bbcb..663219d 100644
--- a/client/idm/console/src/main/java/org/apache/syncope/client/console/widgets/RemediationsWidget.java
+++ b/client/idm/console/src/main/java/org/apache/syncope/client/console/widgets/RemediationsWidget.java
@@ -50,7 +50,7 @@ public class RemediationsWidget extends ExtAlertWidget<RemediationTO> {
     private final List<RemediationTO> lastRemediations = new ArrayList<>();
 
     public RemediationsWidget(final String id, final PageReference pageRef) {
-        super(id);
+        super(id, pageRef);
         setOutputMarkupId(true);
 
         latestAlertsList.add(new IndicatorAjaxTimerBehavior(Duration.of(30, ChronoUnit.SECONDS)) {
diff --git a/client/idm/console/src/main/java/org/apache/syncope/client/console/wizards/CSVPushWizardBuilder.java b/client/idm/console/src/main/java/org/apache/syncope/client/console/wizards/CSVPushWizardBuilder.java
index 2f07a4e..b90a7ec 100644
--- a/client/idm/console/src/main/java/org/apache/syncope/client/console/wizards/CSVPushWizardBuilder.java
+++ b/client/idm/console/src/main/java/org/apache/syncope/client/console/wizards/CSVPushWizardBuilder.java
@@ -103,19 +103,17 @@ public class CSVPushWizardBuilder extends BaseAjaxWizardBuilder<CSVPushSpec> {
         }
     }
 
-    public class PushTask extends WizardStep {
+    public static class PushTask extends WizardStep {
 
         private static final long serialVersionUID = -2747583614435078452L;
 
-        private final ImplementationRestClient implRestClient = new ImplementationRestClient();
-
         private final IModel<List<String>> propActions = new LoadableDetachableModel<List<String>>() {
 
             private static final long serialVersionUID = 4659376149825914247L;
 
             @Override
             protected List<String> load() {
-                return implRestClient.list(IdMImplementationType.PROPAGATION_ACTIONS).stream().
+                return ImplementationRestClient.list(IdMImplementationType.PROPAGATION_ACTIONS).stream().
                         map(EntityTO::getKey).sorted().collect(Collectors.toList());
             }
         };
@@ -126,7 +124,7 @@ public class CSVPushWizardBuilder extends BaseAjaxWizardBuilder<CSVPushSpec> {
 
             @Override
             protected List<String> load() {
-                return implRestClient.list(IdMImplementationType.PUSH_ACTIONS).stream().
+                return ImplementationRestClient.list(IdMImplementationType.PUSH_ACTIONS).stream().
                         map(EntityTO::getKey).sorted().collect(Collectors.toList());
             }
         };
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/PreferenceManager.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/PreferenceManager.java
index f2bb4bc..f420ad8 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/PreferenceManager.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/PreferenceManager.java
@@ -31,7 +31,6 @@ import java.util.Map;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.math.NumberUtils;
 import org.apache.wicket.request.Request;
-import org.apache.wicket.request.Response;
 import org.apache.wicket.util.cookies.CookieDefaults;
 import org.apache.wicket.util.cookies.CookieUtils;
 import org.slf4j.Logger;
@@ -125,7 +124,7 @@ public final class PreferenceManager implements Serializable {
         return result;
     }
 
-    public static void set(final Request request, final Response response, final Map<String, List<String>> prefs) {
+    public static void set(final Map<String, List<String>> prefs) {
         Map<String, String> current = new HashMap<>();
 
         String prefString = COOKIE_UTILS.load(COOKIE_NAME);
@@ -165,9 +164,8 @@ public final class PreferenceManager implements Serializable {
         set(key, StringUtils.join(values, ";"));
     }
 
-    public static void setList(
-            final Request request, final Response response, final Map<String, List<String>> prefs) {
-        set(request, response, prefs);
+    public static void setList(final Map<String, List<String>> prefs) {
+        set(prefs);
     }
 
     private PreferenceManager() {
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/SyncopeWebApplication.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/SyncopeWebApplication.java
index 41b5ea7..c28126a 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/SyncopeWebApplication.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/SyncopeWebApplication.java
@@ -193,7 +193,13 @@ public class SyncopeWebApplication extends WicketBootSecuredWebApplication {
                 ? null
                 : Integer.valueOf(props.getProperty("maxUploadFileSizeMB"));
 
-        maxWaitTime = Integer.valueOf(props.getProperty("maxWaitTimeOnApplyChanges", "30"));
+        try {
+            maxWaitTime = Integer.valueOf(props.getProperty("maxWaitTimeOnApplyChanges", "30"));
+        } catch (NumberFormatException e) {
+            LOG.error("Invalid value provided for 'maxWaitTimeOnApplyChanges': {}",
+                    props.getProperty("maxWaitTimeOnApplyChanges"));
+            maxWaitTime = 30;
+        }
 
         // Resource connections check thread pool size
         try {
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DashboardExtensionsPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DashboardExtensionsPanel.java
index 1d05327..c0b0e1d 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DashboardExtensionsPanel.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DashboardExtensionsPanel.java
@@ -46,8 +46,8 @@ public class DashboardExtensionsPanel extends Panel {
 
         List<BaseExtWidget> instances = new ArrayList<>();
 
-        for (final Class<? extends BaseExtWidget> clazz : extWidgetClasses) {
-            final Constructor<? extends BaseExtWidget> constructor =
+        extWidgetClasses.forEach(clazz -> {
+            Constructor<? extends BaseExtWidget> constructor =
                     ClassUtils.getConstructorIfAvailable(clazz, String.class, PageReference.class);
             if (constructor == null) {
                 LOG.error("Could not find required construtor in {}, ignoring", clazz);
@@ -58,7 +58,7 @@ public class DashboardExtensionsPanel extends Panel {
                     LOG.error("While creating instance of {}", clazz, e);
                 }
             }
-        }
+        });
 
         ListView<BaseExtWidget> widgets = new ListView<BaseExtWidget>("widgets", instances) {
 
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DisplayAttributesModalPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DisplayAttributesModalPanel.java
index 896f266..19d95fe 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DisplayAttributesModalPanel.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DisplayAttributesModalPanel.java
@@ -120,7 +120,7 @@ public abstract class DisplayAttributesModalPanel<T extends Serializable> extend
         // remove old schemas from selected lists
         selectedPlainSchemas.retainAll(pSchemaNames);
         selectedDerSchemas.retainAll(dSchemaNames);
-        
+
         final WebMarkupContainer container = new WebMarkupContainer("container");
         container.setOutputMarkupId(true);
         add(container);
@@ -162,12 +162,11 @@ public abstract class DisplayAttributesModalPanel<T extends Serializable> extend
             SyncopeConsoleSession.get().error(getString("tooManySelections"));
             onError(target);
         } else {
-            final Map<String, List<String>> prefs = new HashMap<>();
-
+            Map<String, List<String>> prefs = new HashMap<>();
             prefs.put(DisplayAttributesModalPanel.getPrefDetailView(type), selectedDetails);
             prefs.put(DisplayAttributesModalPanel.getPrefPlainAttributeView(type), selectedPlainSchemas);
             prefs.put(DisplayAttributesModalPanel.getPrefDerivedAttributeView(type), selectedDerSchemas);
-            PreferenceManager.setList(getRequest(), getResponse(), prefs);
+            PreferenceManager.setList(prefs);
 
             SyncopeConsoleSession.get().success(getString(Constants.OPERATION_SUCCEEDED));
             modal.close(target);
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/widgets/AnyByRealmWidget.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/widgets/AnyByRealmWidget.java
index 4c1d103..8964207 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/widgets/AnyByRealmWidget.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/widgets/AnyByRealmWidget.java
@@ -83,8 +83,6 @@ public class AnyByRealmWidget extends BaseWidget {
             final String anyType2,
             final Map<String, Integer> any2ByRealm) {
 
-        List<String> labels = new ArrayList<>();
-
         List<Integer> userValues = new ArrayList<>();
         List<Integer> groupValues = new ArrayList<>();
         List<Integer> any1Values = new ArrayList<>();
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/widgets/BaseExtWidget.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/widgets/BaseExtWidget.java
index a66480b..1274bc6 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/widgets/BaseExtWidget.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/widgets/BaseExtWidget.java
@@ -30,5 +30,4 @@ public abstract class BaseExtWidget extends BaseWidget {
         super(id);
         this.pageRef = pageRef;
     }
-
 }
diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/widgets/ExtAlertWidget.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/widgets/ExtAlertWidget.java
index 1453fa9..3d35489 100644
--- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/widgets/ExtAlertWidget.java
+++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/widgets/ExtAlertWidget.java
@@ -19,12 +19,16 @@
 package org.apache.syncope.client.console.widgets;
 
 import java.io.Serializable;
+import org.apache.wicket.PageReference;
 
 public abstract class ExtAlertWidget<T extends Serializable> extends AlertWidget<T> {
 
     private static final long serialVersionUID = -5622060468533516192L;
 
-    public ExtAlertWidget(final String id) {
+    protected final PageReference pageRef;
+
+    public ExtAlertWidget(final String id, final PageReference pageRef) {
         super(id);
+        this.pageRef = pageRef;
     }
 }
diff --git a/client/idrepo/enduser/src/main/java/org/apache/syncope/client/enduser/SyncopeWebApplication.java b/client/idrepo/enduser/src/main/java/org/apache/syncope/client/enduser/SyncopeWebApplication.java
index 48d6e42..cd3c06b 100644
--- a/client/idrepo/enduser/src/main/java/org/apache/syncope/client/enduser/SyncopeWebApplication.java
+++ b/client/idrepo/enduser/src/main/java/org/apache/syncope/client/enduser/SyncopeWebApplication.java
@@ -189,9 +189,11 @@ public class SyncopeWebApplication extends WicketBootStandardWebApplication {
                 }
             }
             FileAlterationObserver observer = existsEnduserDir
-                    ? new FileAlterationObserver(enduserDir,
+                    ? new FileAlterationObserver(
+                            enduserDir,
                             pathname -> StringUtils.contains(pathname.getPath(), CUSTOM_FORM_ATTRIBUTES_FILE))
-                    : new FileAlterationObserver(getClass().getResource('/' + CUSTOM_FORM_ATTRIBUTES_FILE).getFile(),
+                    : new FileAlterationObserver(
+                            SyncopeWebApplication.class.getResource('/' + CUSTOM_FORM_ATTRIBUTES_FILE).getFile(),
                             pathname -> StringUtils.contains(pathname.getPath(), CUSTOM_FORM_ATTRIBUTES_FILE));
 
             customFormAttributesMonitor = new FileAlterationMonitor(5000);
diff --git a/client/idrepo/enduser/src/main/java/org/apache/syncope/client/enduser/wizards/any/AnyWizardBuilder.java b/client/idrepo/enduser/src/main/java/org/apache/syncope/client/enduser/wizards/any/AnyWizardBuilder.java
index df2fb34..b768362 100644
--- a/client/idrepo/enduser/src/main/java/org/apache/syncope/client/enduser/wizards/any/AnyWizardBuilder.java
+++ b/client/idrepo/enduser/src/main/java/org/apache/syncope/client/enduser/wizards/any/AnyWizardBuilder.java
@@ -103,7 +103,7 @@ public abstract class AnyWizardBuilder extends AbstractAnyWizardBuilder<UserTO>
         }
 
         if (formLayoutInfo.isGroups()) {
-            wizardModel.add(new Groups(modelObject, mode == AjaxWizard.Mode.TEMPLATE));
+            wizardModel.add(new Groups(modelObject));
         }
 
         // attributes panel steps
diff --git a/client/idrepo/enduser/src/main/java/org/apache/syncope/client/enduser/wizards/any/Groups.java b/client/idrepo/enduser/src/main/java/org/apache/syncope/client/enduser/wizards/any/Groups.java
index 7ce21c7..4b9d70b 100644
--- a/client/idrepo/enduser/src/main/java/org/apache/syncope/client/enduser/wizards/any/Groups.java
+++ b/client/idrepo/enduser/src/main/java/org/apache/syncope/client/enduser/wizards/any/Groups.java
@@ -42,7 +42,7 @@ public class Groups extends AbstractGroups {
 
     private final EnduserGroupsModel groupsModel;
 
-    public <T extends AnyTO> Groups(final AnyWrapper<T> modelObject, final boolean templateMode) {
+    public <T extends AnyTO> Groups(final AnyWrapper<T> modelObject) {
         super(modelObject);
         this.groupsModel = new EnduserGroupsModel();
 
diff --git a/common/idrepo/lib/src/main/java/org/apache/syncope/common/lib/search/ConnObjectTOFiqlSearchConditionBuilder.java b/common/idrepo/lib/src/main/java/org/apache/syncope/common/lib/search/ConnObjectTOFiqlSearchConditionBuilder.java
index c679928..6f356bf 100644
--- a/common/idrepo/lib/src/main/java/org/apache/syncope/common/lib/search/ConnObjectTOFiqlSearchConditionBuilder.java
+++ b/common/idrepo/lib/src/main/java/org/apache/syncope/common/lib/search/ConnObjectTOFiqlSearchConditionBuilder.java
@@ -39,7 +39,7 @@ public class ConnObjectTOFiqlSearchConditionBuilder extends AbstractFiqlSearchCo
         return newBuilderInstance().is(property);
     }
 
-    protected class Builder extends AbstractFiqlSearchConditionBuilder.Builder<
+    protected static class Builder extends AbstractFiqlSearchConditionBuilder.Builder<
         ConnObjectTOProperty, ConnObjectTOPartialCondition, ConnObjectTOCompleteCondition>
             implements ConnObjectTOProperty, ConnObjectTOPartialCondition, ConnObjectTOCompleteCondition {
 
diff --git a/common/idrepo/rest-api/src/main/java/org/apache/syncope/common/rest/api/batch/BatchPayloadParser.java b/common/idrepo/rest-api/src/main/java/org/apache/syncope/common/rest/api/batch/BatchPayloadParser.java
index a558db1..d64509a 100644
--- a/common/idrepo/rest-api/src/main/java/org/apache/syncope/common/rest/api/batch/BatchPayloadParser.java
+++ b/common/idrepo/rest-api/src/main/java/org/apache/syncope/common/rest/api/batch/BatchPayloadParser.java
@@ -145,8 +145,12 @@ public final class BatchPayloadParser {
                     }
                 } else if (item instanceof BatchResponseItem) {
                     BatchResponseItem bri = BatchResponseItem.class.cast(item);
-                    bri.setStatus(Integer.valueOf(StringUtils.substringBefore(
-                            StringUtils.substringAfter(currentLine.toString(), " "), " ").trim()));
+                    try {
+                        bri.setStatus(Integer.valueOf(StringUtils.substringBefore(
+                                StringUtils.substringAfter(currentLine.toString(), " "), " ").trim()));
+                    } catch (NumberFormatException e) {
+                        LOG.error("Invalid value found in response for HTTP status", e);
+                    }
                 }
             } else {
                 Matcher headerMatcher = PATTERN_HEADER_LINE.matcher(currentLine.toString());
diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/auth/JPAWAConfigEntry.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/auth/JPAWAConfigEntry.java
index bd75c1c..e01fad4 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/auth/JPAWAConfigEntry.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/auth/JPAWAConfigEntry.java
@@ -18,28 +18,28 @@
  */
 package org.apache.syncope.core.persistence.jpa.entity.auth;
 
-import org.apache.syncope.core.persistence.api.entity.auth.WAConfigEntry;
-import org.apache.syncope.core.persistence.jpa.entity.AbstractProvidedKeyEntity;
-
+import java.util.ArrayList;
+import java.util.List;
 import javax.persistence.CollectionTable;
 import javax.persistence.Column;
 import javax.persistence.ElementCollection;
 import javax.persistence.Entity;
 import javax.persistence.JoinColumn;
 import javax.persistence.Table;
-
-import java.util.ArrayList;
-import java.util.List;
+import org.apache.syncope.core.persistence.api.entity.auth.WAConfigEntry;
+import org.apache.syncope.core.persistence.jpa.entity.AbstractProvidedKeyEntity;
 
 @Entity
 @Table(name = JPAWAConfigEntry.TABLE)
 public class JPAWAConfigEntry extends AbstractProvidedKeyEntity implements WAConfigEntry {
+
     public static final String TABLE = "ConfigEntry";
 
     private static final long serialVersionUID = 6422422526695279794L;
 
     @ElementCollection
-    @CollectionTable(name = TABLE + "Values", joinColumns = @JoinColumn(name = "id"))
+    @CollectionTable(name = TABLE + "Values", joinColumns =
+            @JoinColumn(name = "id"))
     @Column(nullable = false)
     private List<String> values = new ArrayList<>();
 
@@ -48,6 +48,7 @@ public class JPAWAConfigEntry extends AbstractProvidedKeyEntity implements WACon
         return values;
     }
 
+    @Override
     public void setValues(final List<String> values) {
         this.values = values;
     }
diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/openjpa/BooleanValueHandler.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/openjpa/BooleanValueHandler.java
index 9e1ca1a..68d498e 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/openjpa/BooleanValueHandler.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/openjpa/BooleanValueHandler.java
@@ -47,12 +47,12 @@ public class BooleanValueHandler extends AbstractValueHandler {
     @Deprecated
     public Column[] map(final ValueMapping vm, final String name, final ColumnIO io, final boolean adapt) {
         DBDictionary dict = vm.getMappingRepository().getDBDictionary();
-        DBIdentifier colName = DBIdentifier.newColumn(name, Optional.ofNullable(dict)
-            .filter(DBDictionary::delimitAll).isPresent());
-        return map(vm, colName, io, adapt);
+        DBIdentifier colName = DBIdentifier.newColumn(name, Optional.ofNullable(dict).
+                filter(DBDictionary::delimitAll).isPresent());
+        return map(colName, io, adapt);
     }
 
-    public static Column[] map(final ValueMapping vm, final DBIdentifier name, final ColumnIO io, final boolean adapt) {
+    public static Column[] map(final DBIdentifier name, final ColumnIO io, final boolean adapt) {
         Column col = new Column();
         col.setIdentifier(name);
         col.setJavaType(JavaTypes.INT);
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultRealmPullResultHandler.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultRealmPullResultHandler.java
index cd60747..33fb80f 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultRealmPullResultHandler.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultRealmPullResultHandler.java
@@ -136,7 +136,7 @@ public class DefaultRealmPullResultHandler
             return List.of();
         }
 
-        RealmTO realmTO = connObjectUtils.getRealmTO(delta.getObject(), profile.getTask(), orgUnit);
+        RealmTO realmTO = connObjectUtils.getRealmTO(delta.getObject(), orgUnit);
         if (realmTO.getFullPath() == null) {
             if (realmTO.getParent() == null) {
                 realmTO.setParent(profile.getTask().getDestinationRealm().getFullPath());
@@ -175,7 +175,7 @@ public class DefaultRealmPullResultHandler
             return List.of();
         }
 
-        RealmTO realmTO = connObjectUtils.getRealmTO(delta.getObject(), profile.getTask(), orgUnit);
+        RealmTO realmTO = connObjectUtils.getRealmTO(delta.getObject(), orgUnit);
         if (realmTO.getFullPath() == null) {
             if (realmTO.getParent() == null) {
                 realmTO.setParent(profile.getTask().getDestinationRealm().getFullPath());
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/utils/ConnObjectUtils.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/utils/ConnObjectUtils.java
index e8a9cce..aad7460 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/utils/ConnObjectUtils.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/utils/ConnObjectUtils.java
@@ -202,7 +202,7 @@ public class ConnObjectUtils {
         return anyCR;
     }
 
-    public RealmTO getRealmTO(final ConnectorObject obj, final PullTask task, final OrgUnit orgUnit) {
+    public RealmTO getRealmTO(final ConnectorObject obj, final OrgUnit orgUnit) {
         RealmTO realmTO = new RealmTO();
 
         MappingUtils.getPullItems(orgUnit.getItems().stream()).forEach(item
diff --git a/ext/flowable/client-console/src/main/java/org/apache/syncope/client/console/widgets/UserRequestFormsWidget.java b/ext/flowable/client-console/src/main/java/org/apache/syncope/client/console/widgets/UserRequestFormsWidget.java
index d9e5c3f..530d74f 100644
--- a/ext/flowable/client-console/src/main/java/org/apache/syncope/client/console/widgets/UserRequestFormsWidget.java
+++ b/ext/flowable/client-console/src/main/java/org/apache/syncope/client/console/widgets/UserRequestFormsWidget.java
@@ -51,7 +51,7 @@ public class UserRequestFormsWidget extends ExtAlertWidget<UserRequestForm> {
     private final List<UserRequestForm> lastForms = new ArrayList<>();
 
     public UserRequestFormsWidget(final String id, final PageReference pageRef) {
-        super(id);
+        super(id, pageRef);
         setOutputMarkupId(true);
 
         latestAlertsList.add(new IndicatorAjaxTimerBehavior(Duration.of(30, ChronoUnit.SECONDS)) {
diff --git a/ext/flowable/flowable-bpmn/src/main/java/org/apache/syncope/core/flowable/impl/FlowableRuntimeUtils.java b/ext/flowable/flowable-bpmn/src/main/java/org/apache/syncope/core/flowable/impl/FlowableRuntimeUtils.java
index bb49a05..44b112a 100644
--- a/ext/flowable/flowable-bpmn/src/main/java/org/apache/syncope/core/flowable/impl/FlowableRuntimeUtils.java
+++ b/ext/flowable/flowable-bpmn/src/main/java/org/apache/syncope/core/flowable/impl/FlowableRuntimeUtils.java
@@ -121,9 +121,7 @@ public final class FlowableRuntimeUtils {
         }
     }
 
-    public static Set<String> getPerformedTasks(
-            final DomainProcessEngine engine, final String procInstId, final User user) {
-
+    public static Set<String> getPerformedTasks(final DomainProcessEngine engine, final String procInstId) {
         return engine.getHistoryService().createHistoricActivityInstanceQuery().
                 executionId(procInstId).
                 list().stream().
diff --git a/ext/flowable/flowable-bpmn/src/main/java/org/apache/syncope/core/flowable/impl/FlowableUserRequestHandler.java b/ext/flowable/flowable-bpmn/src/main/java/org/apache/syncope/core/flowable/impl/FlowableUserRequestHandler.java
index 10aade4..5cbbf91 100644
--- a/ext/flowable/flowable-bpmn/src/main/java/org/apache/syncope/core/flowable/impl/FlowableUserRequestHandler.java
+++ b/ext/flowable/flowable-bpmn/src/main/java/org/apache/syncope/core/flowable/impl/FlowableUserRequestHandler.java
@@ -643,7 +643,7 @@ public class FlowableUserRequestHandler implements UserRequestHandler {
             throw new NotFoundException("User with key " + getUserKey(procInstID));
         }
 
-        Set<String> preTasks = FlowableRuntimeUtils.getPerformedTasks(engine, procInstID, user);
+        Set<String> preTasks = FlowableRuntimeUtils.getPerformedTasks(engine, procInstID);
 
         engine.getRuntimeService().setVariable(procInstID, FlowableRuntimeUtils.TASK, "submit");
         engine.getRuntimeService().setVariable(procInstID, FlowableRuntimeUtils.FORM_SUBMITTER, authUser);
@@ -653,7 +653,7 @@ public class FlowableUserRequestHandler implements UserRequestHandler {
         } catch (FlowableException e) {
             FlowableRuntimeUtils.throwException(e, "While submitting form for task " + form.getTaskId());
         }
-        Set<String> postTasks = FlowableRuntimeUtils.getPerformedTasks(engine, procInstID, user);
+        Set<String> postTasks = FlowableRuntimeUtils.getPerformedTasks(engine, procInstID);
         postTasks.removeAll(preTasks);
         postTasks.add(form.getTaskId());
         if (procInstID.equals(FlowableRuntimeUtils.getWFProcInstID(engine, user.getKey()))) {
diff --git a/ext/flowable/flowable-bpmn/src/main/java/org/apache/syncope/core/flowable/impl/FlowableUserWorkflowAdapter.java b/ext/flowable/flowable-bpmn/src/main/java/org/apache/syncope/core/flowable/impl/FlowableUserWorkflowAdapter.java
index ff9fb11..1a47028 100644
--- a/ext/flowable/flowable-bpmn/src/main/java/org/apache/syncope/core/flowable/impl/FlowableUserWorkflowAdapter.java
+++ b/ext/flowable/flowable-bpmn/src/main/java/org/apache/syncope/core/flowable/impl/FlowableUserWorkflowAdapter.java
@@ -160,7 +160,7 @@ public class FlowableUserWorkflowAdapter extends AbstractUserWorkflowAdapter imp
                 propByRes,
                 propByLinkedAccount);
 
-        Set<String> tasks = FlowableRuntimeUtils.getPerformedTasks(engine, procInst.getProcessInstanceId(), user);
+        Set<String> tasks = FlowableRuntimeUtils.getPerformedTasks(engine, procInst.getProcessInstanceId());
 
         return new UserWorkflowResult<>(
                 Pair.of(created.getKey(), propagateEnable),
@@ -174,7 +174,7 @@ public class FlowableUserWorkflowAdapter extends AbstractUserWorkflowAdapter imp
             final User user,
             final Map<String, Object> moreVariables) {
 
-        Set<String> preTasks = FlowableRuntimeUtils.getPerformedTasks(engine, procInstID, user);
+        Set<String> preTasks = FlowableRuntimeUtils.getPerformedTasks(engine, procInstID);
 
         Map<String, Object> variables = new HashMap<>();
         variables.put(FlowableRuntimeUtils.WF_EXECUTOR, AuthContextUtils.getUsername());
@@ -198,7 +198,7 @@ public class FlowableUserWorkflowAdapter extends AbstractUserWorkflowAdapter imp
             LOG.warn("Expected a single task, found {}", tasks.size());
         }
 
-        Set<String> postTasks = FlowableRuntimeUtils.getPerformedTasks(engine, procInstID, user);
+        Set<String> postTasks = FlowableRuntimeUtils.getPerformedTasks(engine, procInstID);
         postTasks.removeAll(preTasks);
         if (task != null) {
             postTasks.add(task);
diff --git a/ext/scimv2/client-console/src/main/java/org/apache/syncope/client/console/panels/SCIMConfGeneralPanel.java b/ext/scimv2/client-console/src/main/java/org/apache/syncope/client/console/panels/SCIMConfGeneralPanel.java
index 50eb499..bcc2afd 100644
--- a/ext/scimv2/client-console/src/main/java/org/apache/syncope/client/console/panels/SCIMConfGeneralPanel.java
+++ b/ext/scimv2/client-console/src/main/java/org/apache/syncope/client/console/panels/SCIMConfGeneralPanel.java
@@ -27,14 +27,16 @@ import org.apache.syncope.common.lib.scim.SCIMConf;
 import org.apache.syncope.common.lib.scim.SCIMGeneralConf;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class SCIMConfGeneralPanel extends SCIMConfTabPanel {
 
     private static final long serialVersionUID = 2765863608539154422L;
 
-    public SCIMConfGeneralPanel(
-            final String id,
-            final SCIMConf scimConf) {
+    private static final Logger LOG = LoggerFactory.getLogger(SCIMConfGeneralPanel.class);
+
+    public SCIMConfGeneralPanel(final String id, final SCIMConf scimConf) {
         super(id, scimConf);
 
         final SCIMGeneralConf scimGeneralConf = scimConf.getGeneralConf();
@@ -126,9 +128,12 @@ public class SCIMConfGeneralPanel extends SCIMConfTabPanel {
 
                     @Override
                     public void setObject(final String object) {
-                        scimGeneralConf.setFilterMaxResults(Integer.parseInt(object));
+                        try {
+                            scimGeneralConf.setFilterMaxResults(Integer.parseInt(object));
+                        } catch (NumberFormatException e) {
+                            LOG.error("Invalid value provided for 'filterMaxResults': {}", object, e);
+                        }
                     }
-
                 });
         filterMaxResultsPanel.setChoices(plainSchemaNames);
 
diff --git a/ide/netbeans/src/main/java/org/apache/syncope/ide/netbeans/service/MailTemplateManagerService.java b/ide/netbeans/src/main/java/org/apache/syncope/ide/netbeans/service/MailTemplateManagerService.java
index cf29713..41dba18 100644
--- a/ide/netbeans/src/main/java/org/apache/syncope/ide/netbeans/service/MailTemplateManagerService.java
+++ b/ide/netbeans/src/main/java/org/apache/syncope/ide/netbeans/service/MailTemplateManagerService.java
@@ -60,9 +60,4 @@ public class MailTemplateManagerService {
     public void setFormat(final String key, final MailTemplateFormat format, final InputStream templateIn) {
         service.setFormat(key, format, templateIn);
     }
-
-    public static boolean removeFormat(final String key, final MailTemplateFormat format) {
-        return false;
-    }
-
 }
diff --git a/ide/netbeans/src/main/java/org/apache/syncope/ide/netbeans/view/ResourceExplorerTopComponent.java b/ide/netbeans/src/main/java/org/apache/syncope/ide/netbeans/view/ResourceExplorerTopComponent.java
index dd01591..faff3d3 100644
--- a/ide/netbeans/src/main/java/org/apache/syncope/ide/netbeans/view/ResourceExplorerTopComponent.java
+++ b/ide/netbeans/src/main/java/org/apache/syncope/ide/netbeans/view/ResourceExplorerTopComponent.java
@@ -95,7 +95,7 @@ public final class ResourceExplorerTopComponent extends TopComponent {
 
     private static final long serialVersionUID = -1643737786852621861L;
 
-    public static final Logger LOG = Logger.getLogger("ResourceExplorerTopComponent");
+    private static final Logger LOG = Logger.getLogger(ResourceExplorerTopComponent.class.getSimpleName());
 
     private static final RequestProcessor REQUEST_PROCESSOR = new RequestProcessor(ResourceExplorerTopComponent.class);
 
@@ -562,9 +562,10 @@ public final class ResourceExplorerTopComponent extends TopComponent {
                 mailTemplatesDir.mkdirs();
             }
             File file = new File(mailTemplatesDirName + name + '.' + type);
-            FileWriter fw = new FileWriter(file, StandardCharsets.UTF_8);
-            fw.write(content);
-            fw.flush();
+            try (FileWriter fw = new FileWriter(file, StandardCharsets.UTF_8)) {
+                fw.write(content);
+                fw.flush();
+            }
             FileObject fob = FileUtil.toFileObject(file.getAbsoluteFile());
             fob.setAttribute("description", "TEXT");
             DataObject data = DataObject.find(fob);
@@ -587,9 +588,10 @@ public final class ResourceExplorerTopComponent extends TopComponent {
             groovyScriptsDir.mkdirs();
         }
         File file = new File(groovyScriptsDirName + name + ".groovy");
-        FileWriter fw = new FileWriter(file, StandardCharsets.UTF_8);
-        fw.write(node.getBody());
-        fw.flush();
+        try (FileWriter fw = new FileWriter(file, StandardCharsets.UTF_8)) {
+            fw.write(node.getBody());
+            fw.flush();
+        }
         FileObject fob = FileUtil.toFileObject(file.getAbsoluteFile());
         DataObject data = DataObject.find(fob);
         data.getLookup().lookup(OpenCookie.class).open();
@@ -631,11 +633,11 @@ public final class ResourceExplorerTopComponent extends TopComponent {
             if (!reportTemplatesDir.exists()) {
                 reportTemplatesDir.mkdirs();
             }
-            File file = new File(reportTemplatesDirName + name + '.' + format.
-                    name().toLowerCase());
-            FileWriter fw = new FileWriter(file, StandardCharsets.UTF_8);
-            fw.write(content);
-            fw.flush();
+            File file = new File(reportTemplatesDirName + name + '.' + format.name().toLowerCase());
+            try (FileWriter fw = new FileWriter(file, StandardCharsets.UTF_8)) {
+                fw.write(content);
+                fw.flush();
+            }
             FileObject fob = FileUtil.toFileObject(file.getAbsoluteFile());
             DataObject data = DataObject.find(fob);
             data.getLookup().lookup(OpenCookie.class).open();